ast

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 21, 2025 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Ast

type Ast struct {
	PackageDeclaration types.Option[PackageDeclaration]
	Items              []AstItem
}

type AstItem

type AstItem struct {
	Interface *Interface
	World     *World
	Use       *TopLevelUse
}

type Bool

type Bool struct{ Type }

type Borrow

type Borrow struct {
	Handle
	Type
	Id string
}

type Case

type Case struct {
	Name string
	Type types.Option[Type]
}

type Char

type Char struct{ Type }

type Constructor

type Constructor struct {
	ResourceMethod
	ParameterList []Parameter
}

type Enum

type Enum struct {
	TypeDef
	ID    string
	Cases []EnumCase
}

type EnumCase

type EnumCase struct {
	Name string
}

type Export

type Export struct {
	WorldItem
	ExternType ExternType
}

type ExternType

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

type ExternTypeFunc

type ExternTypeFunc struct {
	ExternType
	ID   string
	Func *FuncType
}

type ExternTypeInterface

type ExternTypeInterface struct {
	ExternType
	ID             string
	InterfaceItems []InterfaceItem
}

type ExternTypeUsePath

type ExternTypeUsePath struct {
	ExternType
	UsePath *UsePath
}

type Field

type Field struct {
	Name string
	Type Type
}

type Flag

type Flag struct {
	Id string
}

type Flags

type Flags struct {
	TypeDef
	ID    string
	Flags []Flag
}

type Float32

type Float32 struct{ Type }

type Float64

type Float64 struct{ Type }

type FuncItem

type FuncItem struct {
	InterfaceItem
	ID       string
	FuncType *FuncType
}

type FuncType

type FuncType struct {
	Params  []Parameter
	Results *ResultList
}

type Future

type Future struct {
	Type
	ItemType types.Option[Type]
}

type Handle

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

type Id

type Id struct {
	Type
	Value string
}

type Import

type Import struct {
	WorldItem
	ExternType ExternType
}

type Include

type Include struct {
	WorldItem
	From  *UsePath
	Names []IncludeName
}

type IncludeName

type IncludeName struct {
	Name string
	As   string
}

type Interface

type Interface struct {
	Name  string
	Items []InterfaceItem
}

type InterfaceItem

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

type List

type List struct {
	Type
	ItemType Type
}

type Method

type Method struct {
	ResourceMethod
	ID   string
	Func *FuncItem
}

type Option

type Option struct {
	Type
	ItemType Type
}

type Own

type Own struct {
	Handle
	Type
	Id string
}

type PackageDeclaration

type PackageDeclaration struct {
	Namespace string
	Name      string
	Version   types.Option[Version]
}

type Parameter

type Parameter struct {
	Id   string
	Type Type
}

type Record

type Record struct {
	TypeDef
	ID     string
	Fields []Field
}

type Resource

type Resource struct {
	TypeDef
	ID      string
	Methods []ResourceMethod
}

type ResourceMethod

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

type Result

type Result struct {
	Type
	Ok    types.Option[Type]
	Error types.Option[Type]
}

type ResultList

type ResultList struct {
	Named     []Parameter
	Anonymous Type
}

type S16

type S16 struct{ Type }

type S32

type S32 struct{ Type }

type S64

type S64 struct{ Type }

type S8

type S8 struct{ Type }

type Static

type Static struct {
	ResourceMethod
	ID       string
	FuncType *FuncType
}

type Stream

type Stream struct {
	Type
	Element types.Option[Type]
	End     types.Option[Type]
}

type String

type String struct{ Type }

type TopLevelUse

type TopLevelUse struct {
	Item *UsePath
	As   types.Option[string]
}

type Tuple

type Tuple struct {
	Type
	Types []Type
}

type Type

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

type TypeDef

type TypeDef interface {
	WorldItem
	InterfaceItem
	// contains filtered or unexported methods
}

type TypeItem

type TypeItem struct {
	TypeDef
	ID   string
	Type Type
}

type U16

type U16 struct{ Type }

type U32

type U32 struct{ Type }

type U64

type U64 struct{ Type }

type U8

type U8 struct{ Type }

type Use

type Use struct {
	WorldItem
	InterfaceItem
	From  *UsePath
	Names []UseName
}

type UseName

type UseName struct {
	Name string
	As   types.Option[string]
}

type UsePath

type UsePath struct {
	Id      string
	Package struct {
		Id   *PackageDeclaration
		Name string
	}
}

type Variant

type Variant struct {
	TypeDef
	ID    string
	Cases []Case
}

type Version

type Version struct {
	Major uint64
	Minor uint64
	Patch uint64
	Pre   string
	Build string
}

type World

type World struct {
	Id    string
	Items []WorldItem
}

type WorldItem

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

Jump to

Keyboard shortcuts

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