Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AliasType ¶
AliasType represents a type alias (breed). It is transparent: an AliasType equals its underlying type.
type AnyType ¶
type AnyType struct{}
AnyType is an internal fallback type for built-in operations whose types cannot be statically determined (e.g. head, tail, gag). User code must provide explicit type annotations; AnyType is not part of the user-facing type system.
type CollarType ¶
CollarType represents a newtype (collar). It is nominal: two CollarTypes are equal only if they share the same name.
func (CollarType) Equals ¶
func (c CollarType) Equals(t Type) bool
func (CollarType) String ¶
func (c CollarType) String() string
type FurballType ¶
type FurballType struct{}
FurballType represents an error (Furball) type.
func (FurballType) Equals ¶
func (FurballType) Equals(t Type) bool
func (FurballType) String ¶
func (FurballType) String() string
type KittyFieldType ¶
KittyFieldType represents a field in a kitty type.
type KittyType ¶
type KittyType struct {
Name string
Fields []KittyFieldType
}
KittyType represents a user-defined struct type.
type ListType ¶
type ListType struct{ Elem Type }
ListType represents a list type with element type.
type StringType ¶
type StringType struct{}
StringType represents the string type.
func (StringType) Equals ¶
func (StringType) Equals(t Type) bool
func (StringType) String ¶
func (StringType) String() string
type TrickMethodSig ¶
TrickMethodSig represents a method signature in a trick.
type TrickType ¶
type TrickType struct {
Name string
Methods []TrickMethodSig
}
TrickType represents a trick (interface) definition.