Versions in this module Expand all Collapse all v1 v1.7.0-dev-20191021 Oct 18, 2019 v1.7.0-dev-20191018 Oct 17, 2019 v1.7.0-dev-20191017 Oct 16, 2019 v1.7.0-dev-20191011 Oct 11, 2019 v1.7.0-dev-20191004 Oct 3, 2019 v1.7.0-dev-20190926 Sep 25, 2019 v1.7.0-dev-20190911 Sep 11, 2019 v1.6.1 Jul 26, 2019 v1.6.0 Jun 12, 2019 v1.5.0 Mar 8, 2019 v1.4.0 Feb 15, 2019 v1.3.1 Jan 31, 2019 Changes in this version type MapMethods + ClearKeep *codegen.Function v1.2.1 Nov 8, 2018 v1.2.0 Oct 5, 2018 Changes in this version + const AnyArena + const AnyRTTI + const AnyRefCount + const AnyValue + const BufAlign + const BufArena + const BufCap + const BufData + const BufSize + const ContextCmdArgs + const ContextCmdID + const ContextNextPoolID + const ContextThread + const KindArray + const KindBool + const KindChar + const KindClass + const KindEnum + const KindF32 + const KindF64 + const KindInt + const KindMap + const KindPointer + const KindReference + const KindS16 + const KindS32 + const KindS64 + const KindS8 + const KindSize + const KindSlice + const KindString + const KindU16 + const KindU32 + const KindU64 + const KindU8 + const KindUint + const MsgArena + const MsgArgName + const MsgArgValue + const MsgArgs + const MsgIdentifier + const MsgRefCount + const RTTIAPIIndex + const RTTIKind + const RTTIReference + const RTTIRelease + const RTTITypeIndex + const RTTITypeName + const Read + const Write type C + APIs []*semantic.API + Settings Settings + func (c *C) AppendBuffer(s *S, bufPtr, size, bytes *codegen.Value) + func (c *C) AppendBufferData(s *S, bufPtr, ptr *codegen.Value) + func (c *C) CopySliceByPtr(s *S, dst, src *codegen.Value) + func (c *C) CurrentAPI() *semantic.API + func (c *C) CurrentExpression() semantic.Expression + func (c *C) CurrentStatement() semantic.Statement + func (c *C) Delegate(from, to *codegen.Function) + func (c *C) ExpressionStack() []semantic.Expression + func (c *C) InitBuffer(s *S, bufPtr, initialCapacity *codegen.Value) + func (c *C) LoadParameters(s *S, f *semantic.Function) + func (c *C) LogF(s *S, msg string, args ...interface{}) + func (c *C) LogI(s *S, msg string, args ...interface{}) + func (c *C) Parameter(s *S, e *semantic.Parameter) *codegen.Value + func (c *C) SliceDataForRead(s *S, slice *codegen.Value, elType codegen.Type) *codegen.Value + func (c *C) SliceDataForWrite(s *S, slice *codegen.Value, elType codegen.Type) *codegen.Value + func (c *C) SourceLocation() SourceLocation + func (c *C) SourceLocationFor(n semantic.Node) SourceLocation + func (c *C) SourceLocationForCST(n cst.Node) SourceLocation + func (c *C) StatementStack() []semantic.Statement + func (c *C) StorageTypes(layout *device.MemoryLayout, prefix string) *StorageTypes + func (c *C) TermBuffer(s *S, bufPtr *codegen.Value) + type ContextDataPlugin interface + ContextData func(*C) []ContextField + OnPreBuildContext func(*C) + type ContextField struct + Init func(s *S, fieldPtr *codegen.Value) + Name string + Term func(s *S, fieldPtr *codegen.Value) + Type codegen.Type + type FunctionExposerPlugin interface + Functions func() map[string]*codegen.Function + type MapMethods struct + Clear *codegen.Function + Contains *codegen.Function + Index *codegen.Function + Remove *codegen.Function + type OnBeginCommandListener interface + OnBeginCommand func(s *S, cmd *semantic.Function) + type OnEndCommandListener interface + OnEndCommand func(s *S, cmd *semantic.Function) + type OnFenceListener interface + OnFence func(s *S) + type OnReadListener interface + OnRead func(s *S, slice *codegen.Value, ty *semantic.Slice) + type OnWriteListener interface + OnWrite func(s *S, slice *codegen.Value, ty *semantic.Slice) type Program + APIs []*semantic.API + Codegen *codegen.Module + Functions map[string]*codegen.Function type S + CurrentThread *codegen.Value + Parameters map[*semantic.Parameter]*codegen.Value + func (s *S) ForN(n *codegen.Value, cb func(s *S, iterator *codegen.Value) (cont *codegen.Value)) + func (s *S) If(cond *codegen.Value, onTrue func(s *S)) + func (s *S) IfElse(cond *codegen.Value, onTrue, onFalse func(s *S)) + func (s *S) Return(val *codegen.Value) + func (s *S) Switch(cases []SwitchCase, defaultCase func(s *S)) type Settings + CaptureABI *device.ABI + EmitContext bool + EmitDebug bool + Module string + type SourceLocation struct + Column int + File string + Line int + Node semantic.Node + func (l SourceLocation) IsValid() bool + func (l SourceLocation) String() string + type StorageTypes struct + func (s *StorageTypes) AlignOf(ty semantic.Type) uint64 + func (s *StorageTypes) Get(ty semantic.Type) codegen.Type + func (s *StorageTypes) SizeOf(ty semantic.Type) uint64 + func (s *StorageTypes) StrideOf(ty semantic.Type) uint64 + type SwitchCase struct + Block func(*S) + Conditions func(*S) []*codegen.Value type Types + Any *codegen.Struct + AnyPtr codegen.Type + Buf codegen.Type + BufPtr codegen.Type + CaptureTypes *StorageTypes + DataAccess codegen.Type + Msg *codegen.Struct + MsgArg *codegen.Struct + MsgArgPtr codegen.Type + MsgPtr codegen.Type + RTTI *codegen.Struct + VoidPtrPtr codegen.Type + func (t *Types) AlignOf(layout *device.MemoryLayout, ty semantic.Type) uint64 + func (t *Types) Capture(ty semantic.Type) codegen.Type + func (t *Types) SizeOf(layout *device.MemoryLayout, ty semantic.Type) uint64 + func (t *Types) StrideOf(layout *device.MemoryLayout, ty semantic.Type) uint64 v1.1.0 May 8, 2018 Changes in this version + const ContextArena + const ContextGlobals + const ContextLocation + const ErrAborted + const ErrSuccess + const MapArena + const MapCapacity + const MapCount + const MapElements + const MapRefCount + const PoolBuffer + const PoolID + const PoolRefCount + const PoolSize + const RefArena + const RefRefCount + const RefValue + const SliceBase + const SliceCount + const SlicePool + const SliceRoot + const SliceSize + const StringArena + const StringData + const StringLength + const StringRefCount + type C struct + API *semantic.API + M *codegen.Module + Mangler mangling.Mangler + Root mangling.Scope + T Types + func (c *C) Alloc(s *S, count *codegen.Value, ty codegen.Type) *codegen.Value + func (c *C) Build(f codegen.Function, do func(*S)) + func (c *C) CopySlice(s *S, dst, src *codegen.Value) + func (c *C) Fail(msg string, args ...interface{}) + func (c *C) Free(s *S, ptr *codegen.Value) + func (c *C) IterateMap(s *S, mapPtr *codegen.Value, idxTy semantic.Type, ...) + func (c *C) Log(s *S, severity log.Severity, msg string, args ...interface{}) + func (c *C) MakeSlice(s *S, size, count *codegen.Value) *codegen.Value + func (c *C) MakeSliceAt(s *S, size, count, dstPtr *codegen.Value) + func (c *C) MakeString(s *S, length, data *codegen.Value) *codegen.Value + func (c *C) Mangle(ty codegen.Type) mangling.Type + func (c *C) Method(isConst bool, owner codegen.Type, retTy codegen.Type, name string, ...) codegen.Function + func (c *C) Realloc(s *S, old, count *codegen.Value) *codegen.Value + type CommandInfo struct + Execute codegen.Function + Parameters *codegen.Struct + type ErrorCode uint32 + func (c ErrorCode) Err() error + type Location struct + Column int + File string + Line int + func (l Location) String() string + type MapInfo struct + Clear codegen.Function + Contains codegen.Function + Element codegen.Type + Elements *codegen.Struct + Index codegen.Function + Key codegen.Type + Lookup codegen.Function + Remove codegen.Function + Type *codegen.Struct + Val codegen.Type + type Plugin interface + Build func(*C) + type Program struct + Commands map[string]*CommandInfo + Globals *StructInfo + Initializer codegen.Function + Locations []Location + Maps map[string]*MapInfo + Module *codegen.Module + Settings Settings + Structs map[string]*StructInfo + func Compile(api *semantic.API, mappings *resolver.Mappings, s Settings) (*Program, error) + func (p *Program) Dump() string + func (p *Program) IR() map[string]string + type S struct + Arena *codegen.Value + Ctx *codegen.Value + Globals *codegen.Value + Location *codegen.Value + type Settings struct + CodeLocations bool + EmitExec bool + Mangler mangling.Mangler + Namespaces []string + Plugins []Plugin + StorageABI *device.ABI + TargetABI *device.ABI + WriteToApplicationPool bool + type StructInfo struct + Type *codegen.Struct + type Types struct + Arena *codegen.Struct + ArenaPtr codegen.Type + CmdParams map[*semantic.Function]codegen.Type + Ctx codegen.Type + CtxPtr codegen.Type + Globals *codegen.Struct + GlobalsPtr codegen.Type + Maps map[*semantic.Map]*MapInfo + Pool codegen.Type + PoolPtr codegen.Type + Sli codegen.Type + Str *codegen.Struct + StrPtr codegen.Type + Uint8Ptr codegen.Type + VoidPtr codegen.Type + func (t *Types) Storage(ty semantic.Type) codegen.Type + func (t *Types) StorageABIAlignment(ty semantic.Type) int32 + func (t *Types) StorageAllocaSize(ty semantic.Type) int32 + func (t *Types) StorageSize(ty semantic.Type) int32 + func (t *Types) Target(ty semantic.Type) codegen.Type