Versions in this module Expand all Collapse all v0 v0.5.0 Nov 10, 2023 Changes in this version + type AST interface + RunPass func(ctx *Context, pass Pass) + type ASTs []AST + func (asts ASTs) RunPass(ctx *Context, pass Pass) + type ConstDecl struct + Doc *Doc + ID token.Token + TypeRef *TypeRef + Value *ConstValue + func (d *ConstDecl) RunPass(ctx *Context, pass Pass) + type ConstValue struct + Expr string + func (v *ConstValue) RunPass(ctx *Context, pass Pass) + type Context struct + Analysis *analysis.Analysis + func NewContext(l *errlogger.ErrLoggerWrapper) *Context + func (c *Context) RunPassChild(parent AST, child AST, pass Pass) + type Doc struct + func (d *Doc) RunPass(ctx *Context, pass Pass) + type FuncDecl struct + Doc *Doc + ID token.Token + Params ASTs + Rets ASTs + func (d *FuncDecl) RunPass(ctx *Context, pass Pass) + type FuncParam struct + DefaultValue *ConstValue + ID token.Token + Type *TypeRef + VarArg bool + func (p *FuncParam) RunPass(ctx *Context, pass Pass) + type GoType struct + ID token.Token + Package token.Token + Ref bool + func (t *GoType) RunPass(ctx *Context, pass Pass) + type ImportDecl struct + Alias string + Import string + func (d *ImportDecl) RunPass(ctx *Context, pass Pass) + type Pass int + const Check + const Emit + type StructDecl struct + Fields ASTs + Name string + func (d *StructDecl) RunPass(ctx *Context, pass Pass) + type StructField struct + Name string + Type *TypeRef + func (f *StructField) RunPass(ctx *Context, pass Pass) + type TypeDecl struct + Doc *Doc + GoType *GoType + ID token.Token + func (d *TypeDecl) RunPass(ctx *Context, pass Pass) + type TypeRef struct + ID token.Token + Iter bool + Nilable bool + Type analysis.Type + func (r *TypeRef) RunPass(ctx *Context, pass Pass) + type Unit struct + Decls ASTs + Package token.Token + func (u *Unit) RunPass(ctx *Context, pass Pass)