Documentation ¶
Index ¶
- type Alias
- type Annotations
- type App
- type AppAnnotation
- type AppContext
- type AppTag
- type Endpoint
- type EndpointAnnotation
- type EndpointContext
- type EndpointEvent
- type EndpointEventAppName
- type EndpointTag
- type Enum
- type Event
- type EventAnnotation
- type EventContext
- type EventTag
- type Field
- type FieldAnnotation
- type FieldConstraint
- type FieldConstraintLength
- type FieldContext
- type FieldTag
- type Location
- type Mixin
- type MixinAnnotation
- type MixinContext
- type MixinTag
- type Param
- type ParamAnnotation
- type ParamContext
- type ParamTag
- type QueryParam
- type Rest
- type Schema
- type SourceContext
- type SourceContexts
- type Statement
- type StatementAnnotation
- type StatementContext
- type StatementParent
- type StatementReturn
- type StatementReturnAttrs
- type StatementTag
- type Table
- type Tags
- type Type
- type TypeAnnotation
- type TypeContext
- type TypePrimitive
- type TypeRef
- type TypeSequence
- type TypeSet
- type TypeTag
- type TypeTuple
- type View
- type ViewAnnotation
- type ViewContext
- type ViewTag
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Annotations ¶
type Annotations struct { App []AppAnnotation `arrai:",unordered"` Mixin []MixinAnnotation `arrai:",unordered"` Ep []EndpointAnnotation `arrai:",unordered"` Param []ParamAnnotation `arrai:",unordered"` Stmt []StatementAnnotation `arrai:",unordered"` Event []EventAnnotation `arrai:",unordered"` Type []TypeAnnotation `arrai:",unordered"` Field []FieldAnnotation `arrai:",unordered"` View []ViewAnnotation `arrai:",unordered"` }
type AppAnnotation ¶
type AppContext ¶
type AppContext struct { AppName []string AppSrc SourceContext AppSrcs []SourceContext }
type EndpointAnnotation ¶
type EndpointContext ¶
type EndpointContext struct { AppName []string EpName string EpSrc SourceContext EpSrcs []SourceContext }
type EndpointEvent ¶
type EndpointEvent struct { AppName EndpointEventAppName EventName string }
type EndpointEventAppName ¶
type EndpointEventAppName struct {
Part []string
}
type EndpointTag ¶
type EventAnnotation ¶
type EventContext ¶
type EventContext struct { AppName []string EventName string EventSrc SourceContext EventSrcs []SourceContext }
type Field ¶
type Field struct { AppName []string TypeName string FieldName string FieldOpt bool FieldType interface{} // Type* FieldConstraint FieldConstraint `arrai:",zeroempty"` }
type FieldAnnotation ¶
type FieldConstraint ¶
type FieldConstraint struct { Length FieldConstraintLength Precision int32 Scale int32 }
type FieldConstraintLength ¶
type FieldContext ¶
type FieldContext struct { AppName []string TypeName string FieldName string FieldSrc SourceContext FieldSrcs []SourceContext }
type MixinAnnotation ¶
type MixinContext ¶
type MixinContext struct { AppName []string MixinName []string MixinSrc SourceContext MixinSrcs []SourceContext }
type ParamAnnotation ¶
type ParamContext ¶
type ParamContext struct { AppName []string EpName string ParamName string ParamSrc SourceContext ParamSrcs []SourceContext }
type QueryParam ¶
type QueryParam struct { Name string Type interface{} // Type* }
type Rest ¶
type Rest struct { Method string // GET, PUT, POST, DELETE, PATCH Path string QueryParam []QueryParam `arrai:"query_param,omitempty"` URLParam []QueryParam `arrai:"url_param,omitempty"` }
Backwards compatible. TODO: Design new structure.
type Schema ¶
type Schema struct { App []App `arrai:",unordered"` Mixin []Mixin `arrai:",unordered"` Ep []Endpoint `arrai:",unordered"` Param []Param `arrai:",unordered"` Stmt []Statement `arrai:",unordered"` Event []Event `arrai:",unordered"` Type []Type `arrai:",unordered"` Field []Field `arrai:",unordered"` Table []Table `arrai:",unordered"` Alias []Alias `arrai:",unordered"` Enum []Enum `arrai:",unordered"` View []View `arrai:",unordered"` Anno Annotations Tag Tags Src SourceContexts }
func NormalizeSpec ¶
NormalizeSpec returns a relational form of a Sysl module loaded from a Sysl spec.
type SourceContext ¶
type SourceContexts ¶
type SourceContexts struct { App []AppContext `arrai:",unordered"` Mixin []MixinContext `arrai:",unordered"` Ep []EndpointContext `arrai:",unordered"` Param []ParamContext `arrai:",unordered"` Stmt []StatementContext `arrai:",unordered"` Event []EventContext `arrai:",unordered"` Type []TypeContext `arrai:",unordered"` Field []FieldContext `arrai:",unordered"` View []ViewContext `arrai:",unordered"` }
type Statement ¶
type Statement struct { AppName []string EpName string StmtIndex int StmtParent StatementParent `arrai:",zeroempty"` StmtAction string `arrai:",zeroempty"` StmtCall map[string]interface{} `arrai:",zeroempty"` StmtCond map[string]interface{} `arrai:",zeroempty"` StmtLoop map[string]interface{} `arrai:",zeroempty"` StmtLoopN map[string]interface{} `arrai:",zeroempty"` StmtForeach map[string]interface{} `arrai:",zeroempty"` StmtAlt map[string]interface{} `arrai:",zeroempty"` StmtGroup map[string]interface{} `arrai:",zeroempty"` StmtRet StatementReturn `arrai:",zeroempty"` }
type StatementAnnotation ¶
type StatementContext ¶
type StatementContext struct { AppName []string EpName string StmtIndex int StmtSrc SourceContext StmtSrcs []SourceContext }
type StatementParent ¶
type StatementReturn ¶
type StatementReturn struct { Status string Attr StatementReturnAttrs Type interface{} // Type* }
type StatementReturnAttrs ¶
type StatementReturnAttrs struct { Modifier []string Nvp map[interface{}]interface{} }
type StatementTag ¶
type Tags ¶
type Tags struct { App []AppTag `arrai:",unordered"` Mixin []MixinTag `arrai:",unordered"` Ep []EndpointTag `arrai:",unordered"` Param []ParamTag `arrai:",unordered"` Stmt []StatementTag `arrai:",unordered"` Event []EventTag `arrai:",unordered"` Type []TypeTag `arrai:",unordered"` Field []FieldTag `arrai:",unordered"` View []ViewTag `arrai:",unordered"` }
type TypeAnnotation ¶
type TypeContext ¶
type TypeContext struct { AppName []string TypeName string TypeSrc SourceContext TypeSrcs []SourceContext }
type TypePrimitive ¶
type TypePrimitive struct {
Primitive string
}
type TypeSequence ¶
type TypeSequence struct {
Sequence interface{} // Type*
}
type ViewAnnotation ¶
type ViewContext ¶
type ViewContext struct { AppName []string ViewName string ViewSrc SourceContext ViewSrcs []SourceContext }
Click to show internal directories.
Click to hide internal directories.