objectql

package module
v1.0.515 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 12, 2024 License: GPL-3.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
const MogSessionKey = "mgo_session"

Variables

View Source
var Any = &AnyType{}
View Source
var Bool = &BoolType{}
View Source
var Date = &DateType{}
View Source
var DateTime = &DateTimeType{}
View Source
var (
	ErrNotFoundObject = errors.New("not found object")
)
View Source
var Float = &FloatType{}
View Source
var Int = &IntType{}
View Source
var ObjectID = &ObjectIDType{}
View Source
var String = &StringType{}
View Source
var Time = &TimeType{}

Functions

func IdsToPrimitiveObjectIds

func IdsToPrimitiveObjectIds(ids []string) []primitive.ObjectID

func IsAggregationType

func IsAggregationType(tpe Type) bool

func IsArrayType

func IsArrayType(tpe Type) bool

func IsBoolType

func IsBoolType(tpe Type) bool

func IsDateTimeType

func IsDateTimeType(tpe Type) bool

func IsExpandType

func IsExpandType(tpe Type) bool

func IsFloatType

func IsFloatType(tpe Type) bool

func IsFormulaType

func IsFormulaType(tpe Type) bool

func IsIntType

func IsIntType(tpe Type) bool

func IsObjectIDType

func IsObjectIDType(tpe Type) bool

func IsRelateType

func IsRelateType(tpe Type) bool

func IsStringType

func IsStringType(tpe Type) bool

func IsUnknownType

func IsUnknownType(tpe Type) bool

func ObjectIdFromHex

func ObjectIdFromHex(id string) primitive.ObjectID

func StringArrayToProjection

func StringArrayToProjection(arr []string) bson.M

func Strings2GraphqlFieldQuery

func Strings2GraphqlFieldQuery(arr []string) string

func VarsToAnys

func VarsToAnys(arr []*Var) []any

Types

type A

type A = []interface{}

type AggregateArgs

type AggregateArgs struct {
	Pipeline []map[string]any `json:"pipeline"`
}

type AggregateOptions

type AggregateOptions struct {
	Pipeline []map[string]any `json:"pipeline"`
}

type AggregationKind

type AggregationKind = int
const (
	Sum AggregationKind = iota
	Max
	Min
	Avg
	Count
)

type AggregationType

type AggregationType struct {
	Object string
	Relate string
	Field  string
	Type   Type
	Kind   AggregationKind
	Filter M
	// contains filtered or unexported fields
}

type AnyType

type AnyType struct{}

type ArrayType

type ArrayType struct {
	Type Type
}

func NewArrayType

func NewArrayType(tpe Type) *ArrayType

type BoolType

type BoolType struct{}

type Command

type Command struct {
	Call   string   `json:"call"`
	Args   any      `json:"args"`
	Fields []string `json:"fields"`
	Result string   `json:"result"`
}

COMMAND

type CountArgs

type CountArgs struct {
	Filter map[string]any `json:"filter"`
}

type CountOptions

type CountOptions struct {
	Filter map[string]any `json:"filter"`
	Fields []string       `json:"fields"`
}

type DateTimeType

type DateTimeType struct{}

type DateType

type DateType struct{}

type DeleteAfterExHandler

type DeleteAfterExHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, cur *Var) error
}

type DeleteAfterHandler

type DeleteAfterHandler = func(ctx context.Context, id string) error

type DeleteArgs

type DeleteArgs struct {
	Filter map[string]any `json:"filter"`
}

type DeleteBeforeExHandler

type DeleteBeforeExHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, cur *Var) error
}

type DeleteBeforeHandler

type DeleteBeforeHandler = func(ctx context.Context, id string) error

type DeleteByIdArgs

type DeleteByIdArgs struct {
	ID string `json:"id"`
}

type DeleteByIdOptions

type DeleteByIdOptions struct {
	ID string `json:"id"`
}

type DeleteOptions

type DeleteOptions struct {
	Filter map[string]any `json:"filter"`
}

type EventPosition

type EventPosition int
const (
	InsertBefore EventPosition = 1 << iota
	InsertAfter
	UpdateBefore
	UpdateAfter
	DeleteBefore
	DeleteAfter
	IndexMoveBefore
	IndexMoveAfter

	InsertFull    EventPosition = InsertBefore | InsertAfter
	UpdateFull    EventPosition = UpdateBefore | UpdateAfter
	DeleteFull    EventPosition = DeleteBefore | DeleteAfter
	MoveFull      EventPosition = IndexMoveBefore | IndexMoveAfter
	ChangeBefores EventPosition = InsertBefore | UpdateBefore | DeleteBefore
	ChangeAfters  EventPosition = InsertAfter | UpdateAfter | DeleteAfter
)

type ExpandType

type ExpandType struct {
	ObjectApi string
	FieldApi  string
}

type ExpandsType

type ExpandsType struct {
	ObjectApi string
	FieldApi  string
}

type Field

type Field struct {
	Parent        *Object
	Primary       bool
	Require       any
	RequireMsg    string
	Validate      any
	ValidateMsg   string
	Updateable    any
	UpdateableMsg string
	DeleteSync    bool
	Type          Type
	Name          string
	Api           string
	Comment       string
	Default       any
	Select        []SelectOption
	SelectFrom    *SelectValueFrom
	SelectLabel   string
	Fields        []string // resolve 依赖的字段
	Resolve       func(map[string]any) (interface{}, error)
	// contains filtered or unexported fields
}

func (*Field) HasRelation

func (f *Field) HasRelation() bool

type FieldReqireCheckHandle

type FieldReqireCheckHandle struct {
	Fields []string
	Handle func(ctx context.Context, cur *Var) error
}

type FieldUpdateableHandle

type FieldUpdateableHandle struct {
	Fields []string
	Handle func(ctx context.Context, doc *Var, cur *Var) error
}

type FieldValidateHandle

type FieldValidateHandle struct {
	Fields []string
	Handle func(ctx context.Context, cur *Var) error
}

type FindListArgs

type FindListArgs struct {
	Filter map[string]any `json:"filter"`
	Top    int            `json:"top"`
	Skip   int            `json:"skip"`
	Sort   []string       `json:"sort"`
}

type FindListOptions

type FindListOptions struct {
	Filter map[string]any `json:"filter"`
	Top    int            `json:"top"`
	Skip   int            `json:"skip"`
	Sort   []string       `json:"sort"`
	Fields []string       `json:"fields"`
}

type FindOneArgs

type FindOneArgs struct {
	Filter map[string]any `json:"filter"`
}

type FindOneByIdArgs

type FindOneByIdArgs struct {
	ID string `json:"id"`
}

type FindOneByIdOptions

type FindOneByIdOptions struct {
	ID     string   `json:"id"`
	Fields []string `json:"fields"`
}

type FindOneOptions

type FindOneOptions struct {
	Filter map[string]any `json:"filter"`
	Fields []string       `json:"fields"`
	Sort   []string       `json:"sort"`
}

type FloatType

type FloatType struct{}

type FormulaType

type FormulaType struct {
	Formula string
	Type    Type
	// contains filtered or unexported fields
}

func NewFormula

func NewFormula(tpe Type, formula string) *FormulaType

type Handle

type Handle struct {
	Name          string
	Api           string
	Comment       string
	Resolve       any
	NoTransaction bool
	// contains filtered or unexported fields
}

type IndexChangeHandler

type IndexChangeHandler struct {
	Fields   []string
	Position EventPosition
	Handle   func(ctx context.Context, id string, cur *Var, before *Var) error
}

type IndexMoveAfterHandler

type IndexMoveAfterHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, toIndex int, cur *Var, before *Var) error
}

type IndexMoveBeforeHandler

type IndexMoveBeforeHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, toIndex int, cur *Var) error
}

type IndexPosition

type IndexPosition struct {
	Index    int
	Dir      int  // 1=down -1=up 0=自动判断
	Absolute bool // 绝对位置
}

type InsertAfterExHandler

type InsertAfterExHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, doc *Var, cur *Var) error
}

EX

type InsertAfterHandler

type InsertAfterHandler = func(ctx context.Context, id string, doc *Var) error

type InsertArgs

type InsertArgs struct {
	Doc      map[string]any `json:"doc"`
	Index    interface{}    `json:"index"`
	Dir      interface{}    `json:"dir"`
	Absolute bool           `json:"absolute"`
}

type InsertBeforeHandler

type InsertBeforeHandler = func(ctx context.Context, doc *Var) error

type InsertOptions

type InsertOptions struct {
	Doc      map[string]any `json:"doc"`
	Fields   []string       `json:"fields"`
	Index    interface{}    `json:"index"`
	Dir      interface{}    `json:"dir"`
	Absolute bool           `json:"absolute"`
}

type IntType

type IntType struct{}

type ListenChangeHandler

type ListenChangeHandler struct {
	Listen   []string
	Query    []string
	Position EventPosition
	Handle   func(ctx context.Context, change map[string]bool, cur *Var, before *Var) error
}

type M

type M = map[string]any

func IdStrings2ConvMaps

func IdStrings2ConvMaps(ids []string) []M

type MoveArgs

type MoveArgs struct {
	ID       string `json:"id"`
	Index    int    `json:"index"`
	Dir      int    `json:"dir"`
	Absolute bool   `json:"absolute"`
}

type MoveOptions

type MoveOptions struct {
	ID       string `json:"id"`
	Index    int    `json:"index"`
	Dir      int    `json:"dir"`
	Absolute bool   `json:"absolute"`
}

type Object

type Object struct {
	Name      string
	Api       string
	Fields    []*Field
	Comment   string
	Bind      any
	Querys    []*Handle
	Mutations []*Handle

	Index      bool
	IndexGroup []string
	// contains filtered or unexported fields
}

type ObjectFieldPermissionCheckHandler

type ObjectFieldPermissionCheckHandler func(ctx context.Context, object string, field string, kind PermissionKind) (bool, error)

type ObjectHandlePermissionCheckHandler

type ObjectHandlePermissionCheckHandler func(ctx context.Context, object string, name string) (bool, error)

type ObjectIDType

type ObjectIDType struct{}

type ObjectPermissionCheckHandler

type ObjectPermissionCheckHandler func(ctx context.Context, object string, kind PermissionKind) (bool, error)

type Objectql

type Objectql struct {
	// contains filtered or unexported fields
}

func New

func New(optinos ...ObjectqlOptiosn) *Objectql

func (*Objectql) AddFormulaFunction

func (o *Objectql) AddFormulaFunction(name string, fun interface{})

func (*Objectql) AddObject

func (o *Objectql) AddObject(object *Object)

func (*Objectql) Aggregate

func (o *Objectql) Aggregate(ctx context.Context, objectApi string, options AggregateOptions) ([]*Var, error)

func (*Objectql) AsyncNext

func (o *Objectql) AsyncNext(ctx context.Context, fn func(context.Context) error, keys ...string)

func (*Objectql) Call

func (o *Objectql) Call(ctx context.Context, objectApi string, method string, param map[string]any, fields ...[]string) (*Var, error)

调用用户定义的query和mutation

func (*Objectql) Count

func (o *Objectql) Count(ctx context.Context, objectApi string, options CountOptions) (int64, error)

func (*Objectql) Delete

func (o *Objectql) Delete(ctx context.Context, objectApi string, filter M) error

func (*Objectql) DeleteById

func (o *Objectql) DeleteById(ctx context.Context, objectApi string, id string) error

func (*Objectql) Do

func (o *Objectql) Do(ctx context.Context, request string) *graphql.Result

func (*Objectql) DoCommand

func (o *Objectql) DoCommand(ctx context.Context, command Command) (*Var, error)

func (*Objectql) DoCommands

func (o *Objectql) DoCommands(ctx context.Context, commands []Command, filter ...map[string]any) (*Var, error)

func (*Objectql) EndSession

func (o *Objectql) EndSession(ctx context.Context)

func (*Objectql) FindList

func (o *Objectql) FindList(ctx context.Context, objectApi string, options FindListOptions) ([]*Var, error)

func (*Objectql) FindOne

func (o *Objectql) FindOne(ctx context.Context, objectApi string, options FindOneOptions) (*Var, error)

func (*Objectql) FindOneById

func (o *Objectql) FindOneById(ctx context.Context, objectApi string, options FindOneByIdOptions) (*Var, error)

func (*Objectql) GetObject

func (o *Objectql) GetObject(api string) *Object

func (*Objectql) GetObjects

func (o *Objectql) GetObjects() []*Object

func (*Objectql) InitMongodb

func (o *Objectql) InitMongodb(ctx context.Context, uri, datebase string) (err error)

func (*Objectql) InitObjects

func (o *Objectql) InitObjects(ctx context.Context) error

func (*Objectql) Insert

func (o *Objectql) Insert(ctx context.Context, objectApi string, options InsertOptions) (*Var, error)

增删改查接口

func (*Objectql) IsRootPermission

func (o *Objectql) IsRootPermission(ctx context.Context) bool

func (*Objectql) ListenChange

func (o *Objectql) ListenChange(table string, handle *ListenChangeHandler)

func (*Objectql) ListenDeleteAfter

func (o *Objectql) ListenDeleteAfter(table string, fn DeleteAfterHandler)

func (*Objectql) ListenDeleteAfterEx

func (o *Objectql) ListenDeleteAfterEx(table string, handle *DeleteAfterExHandler)

func (*Objectql) ListenDeleteBefore

func (o *Objectql) ListenDeleteBefore(table string, fn DeleteBeforeHandler)

func (*Objectql) ListenDeleteBeforeEx

func (o *Objectql) ListenDeleteBeforeEx(table string, handle *DeleteBeforeExHandler)

func (*Objectql) ListenIndexChange

func (o *Objectql) ListenIndexChange(table string, handle *IndexChangeHandler)

func (*Objectql) ListenIndexMoveAfter

func (o *Objectql) ListenIndexMoveAfter(table string, handle *IndexMoveAfterHandler)

func (*Objectql) ListenIndexMoveBefore

func (o *Objectql) ListenIndexMoveBefore(table string, handle *IndexMoveBeforeHandler)

func (*Objectql) ListenInsertAfter

func (o *Objectql) ListenInsertAfter(table string, fn InsertAfterHandler)

func (*Objectql) ListenInsertAfterEx

func (o *Objectql) ListenInsertAfterEx(table string, handle *InsertAfterExHandler)

func (*Objectql) ListenInsertBefore

func (o *Objectql) ListenInsertBefore(table string, fn InsertBeforeHandler)

func (*Objectql) ListenUpdateAfter

func (o *Objectql) ListenUpdateAfter(table string, fn UpdateAfterHandler)

func (*Objectql) ListenUpdateAfterEx

func (o *Objectql) ListenUpdateAfterEx(table string, handle *UpdateAfterExHandler)

func (*Objectql) ListenUpdateBefore

func (o *Objectql) ListenUpdateBefore(table string, fn UpdateBeoferHandler)

func (*Objectql) ListenUpdateBeforeEx

func (o *Objectql) ListenUpdateBeforeEx(table string, handle *UpdateBeforeExHandler)

func (*Objectql) Move

func (o *Objectql) Move(ctx context.Context, objectApi string, options MoveOptions) error

func (*Objectql) MustGetObject

func (o *Objectql) MustGetObject(api string) (*Object, error)

func (*Objectql) Mutation

func (o *Objectql) Mutation(ctx context.Context, objectApi string, method string, param map[string]any, fields ...[]string) (*Var, error)

func (*Objectql) Next

func (o *Objectql) Next(ctx context.Context, fn func(context.Context) error, keys ...string)

func (*Objectql) Query

func (o *Objectql) Query(ctx context.Context, objectApi string, method string, param map[string]any, fields ...[]string) (*Var, error)

func (*Objectql) RemoveRootPermission

func (o *Objectql) RemoveRootPermission(ctx context.Context) context.Context

func (*Objectql) Save

func (o *Objectql) Save(ctx context.Context, objectApi string, options SaveOptions) (*Var, error)

func (*Objectql) SetObjectFieldPermissionCheckHandler

func (o *Objectql) SetObjectFieldPermissionCheckHandler(fn ObjectFieldPermissionCheckHandler)

func (*Objectql) SetObjectHandlePermissionCheckHandler

func (o *Objectql) SetObjectHandlePermissionCheckHandler(fn ObjectHandlePermissionCheckHandler)

func (*Objectql) SetObjectPermissionCheckHandler

func (o *Objectql) SetObjectPermissionCheckHandler(fn ObjectPermissionCheckHandler)

func (*Objectql) UnListenChange

func (o *Objectql) UnListenChange(table string, handle *ListenChangeHandler)

func (*Objectql) UnListenDeleteAfter

func (o *Objectql) UnListenDeleteAfter(table string, fn DeleteAfterHandler)

func (*Objectql) UnListenDeleteAfterEx

func (o *Objectql) UnListenDeleteAfterEx(table string, handle *DeleteAfterExHandler)

func (*Objectql) UnListenDeleteBefore

func (o *Objectql) UnListenDeleteBefore(table string, fn DeleteBeforeHandler)

func (*Objectql) UnListenDeleteBeforeEx

func (o *Objectql) UnListenDeleteBeforeEx(table string, handle *DeleteBeforeExHandler)

func (*Objectql) UnListenIndexChange

func (o *Objectql) UnListenIndexChange(table string, handle *IndexChangeHandler)

func (*Objectql) UnListenIndexMoveAfter

func (o *Objectql) UnListenIndexMoveAfter(table string, handle *IndexMoveAfterHandler)

func (*Objectql) UnListenIndexMoveBefore

func (o *Objectql) UnListenIndexMoveBefore(table string, handle *IndexMoveBeforeHandler)

func (*Objectql) UnListenInsertAfter

func (o *Objectql) UnListenInsertAfter(table string, fn InsertAfterHandler)

func (*Objectql) UnListenInsertAfterEx

func (o *Objectql) UnListenInsertAfterEx(table string, handle *InsertAfterExHandler)

func (*Objectql) UnListenInsertBefore

func (o *Objectql) UnListenInsertBefore(table string, fn InsertBeforeHandler)

func (*Objectql) UnListenUpdateAfter

func (o *Objectql) UnListenUpdateAfter(table string, fn UpdateAfterHandler)

func (*Objectql) UnListenUpdateAfterEx

func (o *Objectql) UnListenUpdateAfterEx(table string, handle *UpdateAfterExHandler)

func (*Objectql) UnListenUpdateBefore

func (o *Objectql) UnListenUpdateBefore(table string, fn UpdateBeoferHandler)

func (*Objectql) UnListenUpdateBeforeEx

func (o *Objectql) UnListenUpdateBeforeEx(table string, handle *UpdateBeforeExHandler)

func (*Objectql) Update

func (o *Objectql) Update(ctx context.Context, objectApi string, options UpdateOptions) ([]*Var, error)

func (*Objectql) UpdateById

func (o *Objectql) UpdateById(ctx context.Context, objectApi string, options UpdateByIdOptions) (*Var, error)

func (*Objectql) WithRootPermission

func (o *Objectql) WithRootPermission(ctx context.Context) context.Context

func (*Objectql) WithTransaction

func (o *Objectql) WithTransaction(ctx context.Context, fn func(ctx context.Context) (interface{}, error)) (interface{}, error)

type ObjectqlOptiosn

type ObjectqlOptiosn struct {
	OperatorObject string
	GetOperator    func(ctx context.Context) (any, error)
}

type PermissionKind

type PermissionKind int
const (
	ObjectInsert PermissionKind = iota
	ObjectUpdate
	ObjectDelete
	ObjectQuery
	FieldQuery
	FieldUpdate
)

type RelateType

type RelateType struct {
	ObjectApi string
	Expand    []string // 扩展关联的字段
}

func NewRelate

func NewRelate(api string, expandOpt ...[]string) *RelateType

type SaveArgs

type SaveArgs struct {
	Doc      map[string]any `json:"doc"`
	Index    interface{}    `json:"index"`
	Dir      interface{}    `json:"dir"`
	Absolute bool           `json:"absolute"`
}

type SaveOptions

type SaveOptions struct {
	Doc      map[string]any `json:"doc"`
	Fields   []string       `json:"fields"`
	Index    interface{}    `json:"index"`
	Dir      interface{}    `json:"dir"`
	Absolute bool           `json:"absolute"`
}

type SelectOption

type SelectOption struct {
	Label string      `json:"label"`
	Value interface{} `json:"value"`
}

type SelectValueFrom

type SelectValueFrom struct {
	Object string `json:"object"`
	Label  string `json:"label"`
	Value  string `json:"value"`
}

type StringType

type StringType struct{}

type TimeType

type TimeType struct{}

type Type

type Type interface {
	// contains filtered or unexported methods
}

func GetExplicitType

func GetExplicitType(field *Field) Type

type UnknownType

type UnknownType struct{}

type UpdateAfterExHandler

type UpdateAfterExHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, doc *Var, cur *Var) error
}

type UpdateAfterHandler

type UpdateAfterHandler = func(ctx context.Context, id string, doc *Var) error

type UpdateArgs

type UpdateArgs struct {
	Filter map[string]any `json:"filter"`
	Doc    map[string]any `json:"doc"`
}

type UpdateBeforeExHandler

type UpdateBeforeExHandler struct {
	Fields []string
	Handle func(ctx context.Context, id string, doc *Var, cur *Var) error
}

type UpdateBeoferHandler

type UpdateBeoferHandler = func(ctx context.Context, id string, doc *Var) error

type UpdateByIdArgs

type UpdateByIdArgs struct {
	ID  string         `json:"id"`
	Doc map[string]any `json:"doc"`
}

type UpdateByIdOptions

type UpdateByIdOptions struct {
	ID     string         `json:"id"`
	Doc    map[string]any `json:"doc"`
	Fields []string       `json:"fields"`
}

type UpdateOptions

type UpdateOptions struct {
	Filter map[string]any `json:"filter"`
	Doc    map[string]any `json:"doc"`
	Fields []string       `json:"fields"`
}

type Var

type Var struct {
	// contains filtered or unexported fields
}

func NewVar

func NewVar(v any) *Var

func (*Var) Any

func (e *Var) Any(n string) any

func (*Var) Bool

func (e *Var) Bool(n string) bool

func (*Var) Float32

func (e *Var) Float32(n string) float32

func (*Var) Float32s

func (e *Var) Float32s(n string) []float32

func (*Var) Float64

func (e *Var) Float64(n string) float64

func (*Var) Float64s

func (e *Var) Float64s(n string) []float64

func (*Var) GTime

func (e *Var) GTime(n string) *gtime.Time

func (*Var) HasKey

func (e *Var) HasKey(ns ...string) bool

func (*Var) HasSomeKey

func (e *Var) HasSomeKey(ns ...string) bool

func (*Var) Int

func (e *Var) Int(n string) int

func (*Var) Ints

func (e *Var) Ints(n string) []int

func (*Var) IsNil

func (e *Var) IsNil() bool

func (*Var) IsNull

func (e *Var) IsNull(ns ...string) bool

func (*Var) NotNull

func (e *Var) NotNull(ns ...string) bool

func (*Var) PtrBool

func (e *Var) PtrBool(n string) *bool

func (*Var) PtrFloat32

func (e *Var) PtrFloat32(n string) *float32

func (*Var) PtrFloat64

func (e *Var) PtrFloat64(n string) *float64

func (*Var) PtrString

func (e *Var) PtrString(n string) *string

func (*Var) Set

func (e *Var) Set(k string, v any)

func (*Var) String

func (e *Var) String(n string) string

func (*Var) Strings

func (e *Var) Strings(n string) []string

func (*Var) Time

func (e *Var) Time(n string) time.Time

func (*Var) ToAny

func (e *Var) ToAny() any

func (*Var) ToBool

func (e *Var) ToBool() bool

func (*Var) ToFloat32

func (e *Var) ToFloat32() float32

func (*Var) ToFloat32s

func (e *Var) ToFloat32s() []float32

func (*Var) ToFloat64

func (e *Var) ToFloat64() float64

func (*Var) ToFloat64s

func (e *Var) ToFloat64s() []float64

func (*Var) ToInt

func (e *Var) ToInt() int

func (*Var) ToInts

func (e *Var) ToInts() []int

func (*Var) ToStrAnyMap

func (e *Var) ToStrAnyMap() map[string]any

func (*Var) ToString

func (e *Var) ToString() string

func (*Var) ToStrings

func (e *Var) ToStrings() []string

func (*Var) ToTime

func (e *Var) ToTime() time.Time

func (*Var) Var

func (e *Var) Var(n string) *Var

func (*Var) Vars

func (e *Var) Vars(n string) []*Var

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL