typesys

package
v0.0.0-...-6e409f7 Latest Latest
Warning

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

Go to latest
Published: Oct 13, 2014 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewTypeRefs

func NewTypeRefs(xs ...core.ITypeRef) []core.ITypeRef

func NewTypes

func NewTypes(xs ...core.IType) []core.IType

Types

type ArrayType

type ArrayType struct {
	ClassName   string
	BaseType    core.IType
	Length      int
	PointerSize int
}

ArrayType

func NewArrayType

func NewArrayType(baseType core.IType, length int, pointerSize int) *ArrayType

func (ArrayType) Alignment

func (self ArrayType) Alignment() int

func (ArrayType) AllocSize

func (self ArrayType) AllocSize() int

func (ArrayType) GetBaseType

func (self ArrayType) GetBaseType() core.IType

func (ArrayType) GetLength

func (self ArrayType) GetLength() int

func (ArrayType) IsAllocatedArray

func (self ArrayType) IsAllocatedArray() bool

func (ArrayType) IsArray

func (self ArrayType) IsArray() bool

func (ArrayType) IsCallable

func (self ArrayType) IsCallable() bool

func (ArrayType) IsCastableTo

func (self ArrayType) IsCastableTo(target core.IType) bool

func (ArrayType) IsCompatible

func (self ArrayType) IsCompatible(target core.IType) bool

func (ArrayType) IsCompositeType

func (self ArrayType) IsCompositeType() bool

func (ArrayType) IsFunction

func (self ArrayType) IsFunction() bool

func (ArrayType) IsIncompleteArray

func (self ArrayType) IsIncompleteArray() bool

func (ArrayType) IsInteger

func (self ArrayType) IsInteger() bool

func (ArrayType) IsPointer

func (self ArrayType) IsPointer() bool

func (ArrayType) IsSameType

func (self ArrayType) IsSameType(other core.IType) bool

func (ArrayType) IsScalar

func (self ArrayType) IsScalar() bool

func (ArrayType) IsSigned

func (self ArrayType) IsSigned() bool

func (ArrayType) IsStruct

func (self ArrayType) IsStruct() bool

func (ArrayType) IsUnion

func (self ArrayType) IsUnion() bool

func (ArrayType) IsUserType

func (self ArrayType) IsUserType() bool

func (ArrayType) IsVoid

func (self ArrayType) IsVoid() bool

func (ArrayType) Key

func (self ArrayType) Key() string

func (ArrayType) MarshalJSON

func (self ArrayType) MarshalJSON() ([]byte, error)

func (ArrayType) Size

func (self ArrayType) Size() int

func (ArrayType) String

func (self ArrayType) String() string

type ArrayTypeRef

type ArrayTypeRef struct {
	ClassName string
	Location  core.Location
	BaseType  core.ITypeRef
	Length    int
}

ArrayTypeRef

func NewArrayTypeRef

func NewArrayTypeRef(baseType core.ITypeRef, length int) *ArrayTypeRef

func (ArrayTypeRef) GetBaseType

func (self ArrayTypeRef) GetBaseType() core.ITypeRef

func (ArrayTypeRef) GetLength

func (self ArrayTypeRef) GetLength() int

func (ArrayTypeRef) GetLocation

func (self ArrayTypeRef) GetLocation() core.Location

func (ArrayTypeRef) IsTypeRef

func (self ArrayTypeRef) IsTypeRef() bool

func (ArrayTypeRef) Key

func (self ArrayTypeRef) Key() string

func (ArrayTypeRef) MarshalJSON

func (self ArrayTypeRef) MarshalJSON() ([]byte, error)

func (ArrayTypeRef) String

func (self ArrayTypeRef) String() string

type FunctionType

type FunctionType struct {
	ClassName  string
	ReturnType core.IType
	ParamTypes *ParamTypes
}

FunctionType

func NewFunctionType

func NewFunctionType(ret core.IType, paramTypes *ParamTypes) *FunctionType

func (FunctionType) AcceptsArgc

func (self FunctionType) AcceptsArgc(numArgs int) bool

func (FunctionType) Alignment

func (self FunctionType) Alignment() int

func (FunctionType) AllocSize

func (self FunctionType) AllocSize() int

func (FunctionType) GetBaseType

func (self FunctionType) GetBaseType() core.IType

func (FunctionType) GetParamTypes

func (self FunctionType) GetParamTypes() *ParamTypes

func (FunctionType) GetReturnType

func (self FunctionType) GetReturnType() core.IType

func (FunctionType) IsAllocatedArray

func (self FunctionType) IsAllocatedArray() bool

func (FunctionType) IsArray

func (self FunctionType) IsArray() bool

func (FunctionType) IsCallable

func (self FunctionType) IsCallable() bool

func (FunctionType) IsCastableTo

func (self FunctionType) IsCastableTo(target core.IType) bool

func (FunctionType) IsCompatible

func (self FunctionType) IsCompatible(target core.IType) bool

func (FunctionType) IsCompositeType

func (self FunctionType) IsCompositeType() bool

func (FunctionType) IsFunction

func (self FunctionType) IsFunction() bool

func (FunctionType) IsIncompleteArray

func (self FunctionType) IsIncompleteArray() bool

func (FunctionType) IsInteger

func (self FunctionType) IsInteger() bool

func (FunctionType) IsPointer

func (self FunctionType) IsPointer() bool

func (FunctionType) IsSameType

func (self FunctionType) IsSameType(other core.IType) bool

func (FunctionType) IsScalar

func (self FunctionType) IsScalar() bool

func (FunctionType) IsSigned

func (self FunctionType) IsSigned() bool

func (FunctionType) IsStruct

func (self FunctionType) IsStruct() bool

func (FunctionType) IsUnion

func (self FunctionType) IsUnion() bool

func (FunctionType) IsUserType

func (self FunctionType) IsUserType() bool

func (FunctionType) IsVoid

func (self FunctionType) IsVoid() bool

func (FunctionType) Key

func (self FunctionType) Key() string

func (FunctionType) MarshalJSON

func (self FunctionType) MarshalJSON() ([]byte, error)

func (FunctionType) Size

func (self FunctionType) Size() int

func (FunctionType) String

func (self FunctionType) String() string

type FunctionTypeRef

type FunctionTypeRef struct {
	ClassName  string
	Location   core.Location
	ReturnType core.ITypeRef
	Params     *ParamTypeRefs
}

FunctionTypeRef

func NewFunctionTypeRef

func NewFunctionTypeRef(returnType core.ITypeRef, params core.ITypeRef) *FunctionTypeRef

func (FunctionTypeRef) GetLocation

func (self FunctionTypeRef) GetLocation() core.Location

func (FunctionTypeRef) GetParams

func (self FunctionTypeRef) GetParams() *ParamTypeRefs

func (FunctionTypeRef) GetReturnType

func (self FunctionTypeRef) GetReturnType() core.ITypeRef

func (FunctionTypeRef) IsTypeRef

func (self FunctionTypeRef) IsTypeRef() bool

func (FunctionTypeRef) Key

func (self FunctionTypeRef) Key() string

func (FunctionTypeRef) MarshalJSON

func (self FunctionTypeRef) MarshalJSON() ([]byte, error)

func (FunctionTypeRef) String

func (self FunctionTypeRef) String() string

type IntegerType

type IntegerType struct {
	ClassName   string
	IntegerSize int
	Signed      bool
	Name        string
}

IntegerType

func NewCharType

func NewCharType(size int) *IntegerType

func NewIntType

func NewIntType(size int) *IntegerType

func NewIntegerType

func NewIntegerType(size int, isSigned bool, name string) *IntegerType

func NewLongType

func NewLongType(size int) *IntegerType

func NewShortType

func NewShortType(size int) *IntegerType

func NewUnsignedCharType

func NewUnsignedCharType(size int) *IntegerType

func NewUnsignedIntType

func NewUnsignedIntType(size int) *IntegerType

func NewUnsignedLongType

func NewUnsignedLongType(size int) *IntegerType

func NewUnsignedShortType

func NewUnsignedShortType(size int) *IntegerType

func (IntegerType) Alignment

func (self IntegerType) Alignment() int

func (IntegerType) AllocSize

func (self IntegerType) AllocSize() int

func (IntegerType) GetBaseType

func (self IntegerType) GetBaseType() core.IType

func (IntegerType) GetName

func (self IntegerType) GetName() string

func (IntegerType) IsAllocatedArray

func (self IntegerType) IsAllocatedArray() bool

func (IntegerType) IsArray

func (self IntegerType) IsArray() bool

func (IntegerType) IsCallable

func (self IntegerType) IsCallable() bool

func (IntegerType) IsCastableTo

func (self IntegerType) IsCastableTo(target core.IType) bool

func (IntegerType) IsCompatible

func (self IntegerType) IsCompatible(target core.IType) bool

func (IntegerType) IsCompositeType

func (self IntegerType) IsCompositeType() bool

func (IntegerType) IsFunction

func (self IntegerType) IsFunction() bool

func (IntegerType) IsInDomain

func (self IntegerType) IsInDomain(i int64) bool

func (IntegerType) IsIncompleteArray

func (self IntegerType) IsIncompleteArray() bool

func (IntegerType) IsInteger

func (self IntegerType) IsInteger() bool

func (IntegerType) IsPointer

func (self IntegerType) IsPointer() bool

func (IntegerType) IsSameType

func (self IntegerType) IsSameType(other core.IType) bool

func (IntegerType) IsScalar

func (self IntegerType) IsScalar() bool

func (IntegerType) IsSigned

func (self IntegerType) IsSigned() bool

func (IntegerType) IsStruct

func (self IntegerType) IsStruct() bool

func (IntegerType) IsUnion

func (self IntegerType) IsUnion() bool

func (IntegerType) IsUserType

func (self IntegerType) IsUserType() bool

func (IntegerType) IsVoid

func (self IntegerType) IsVoid() bool

func (IntegerType) Key

func (self IntegerType) Key() string

func (IntegerType) MarshalJSON

func (self IntegerType) MarshalJSON() ([]byte, error)

func (IntegerType) MaxValue

func (self IntegerType) MaxValue() int64

func (IntegerType) MinValue

func (self IntegerType) MinValue() int64

func (IntegerType) Size

func (self IntegerType) Size() int

func (IntegerType) String

func (self IntegerType) String() string

type IntegerTypeRef

type IntegerTypeRef struct {
	ClassName string
	Location  core.Location
	Name      string
}

IntegerTypeRef

func NewCharTypeRef

func NewCharTypeRef(loc core.Location) *IntegerTypeRef

func NewIntTypeRef

func NewIntTypeRef(loc core.Location) *IntegerTypeRef

func NewIntegerTypeRef

func NewIntegerTypeRef(loc core.Location, name string) *IntegerTypeRef

func NewLongTypeRef

func NewLongTypeRef(loc core.Location) *IntegerTypeRef

func NewShortTypeRef

func NewShortTypeRef(loc core.Location) *IntegerTypeRef

func NewUnsignedCharTypeRef

func NewUnsignedCharTypeRef(loc core.Location) *IntegerTypeRef

func NewUnsignedIntTypeRef

func NewUnsignedIntTypeRef(loc core.Location) *IntegerTypeRef

func NewUnsignedLongTypeRef

func NewUnsignedLongTypeRef(loc core.Location) *IntegerTypeRef

func NewUnsignedShortTypeRef

func NewUnsignedShortTypeRef(loc core.Location) *IntegerTypeRef

func (IntegerTypeRef) GetLocation

func (self IntegerTypeRef) GetLocation() core.Location

func (IntegerTypeRef) IsTypeRef

func (self IntegerTypeRef) IsTypeRef() bool

func (IntegerTypeRef) Key

func (self IntegerTypeRef) Key() string

func (IntegerTypeRef) MarshalJSON

func (self IntegerTypeRef) MarshalJSON() ([]byte, error)

func (IntegerTypeRef) String

func (self IntegerTypeRef) String() string

type ParamTypeRefs

type ParamTypeRefs struct {
	ClassName  string
	Location   core.Location
	ParamDescs []core.ITypeRef
	Vararg     bool
}

ParamTypeRefs

func NewParamTypeRefs

func NewParamTypeRefs(loc core.Location, paramDescs []core.ITypeRef, vararg bool) *ParamTypeRefs

func (ParamTypeRefs) GetLocation

func (self ParamTypeRefs) GetLocation() core.Location

func (ParamTypeRefs) GetParamDescs

func (self ParamTypeRefs) GetParamDescs() []core.ITypeRef

func (ParamTypeRefs) IsTypeRef

func (self ParamTypeRefs) IsTypeRef() bool

func (ParamTypeRefs) IsVararg

func (self ParamTypeRefs) IsVararg() bool

func (ParamTypeRefs) Key

func (self ParamTypeRefs) Key() string

func (ParamTypeRefs) MarshalJSON

func (self ParamTypeRefs) MarshalJSON() ([]byte, error)

func (ParamTypeRefs) String

func (self ParamTypeRefs) String() string

type ParamTypes

type ParamTypes struct {
	ClassName  string
	Location   core.Location
	ParamDescs []core.IType
	Vararg     bool
}

ParamTypes

func NewParamTypes

func NewParamTypes(loc core.Location, paramDescs []core.IType, vararg bool) *ParamTypes

func (ParamTypes) Alignment

func (self ParamTypes) Alignment() int

func (ParamTypes) AllocSize

func (self ParamTypes) AllocSize() int

func (ParamTypes) Argc

func (self ParamTypes) Argc() int

func (ParamTypes) GetBaseType

func (self ParamTypes) GetBaseType() core.IType

func (ParamTypes) GetParamDescs

func (self ParamTypes) GetParamDescs() []core.IType

func (ParamTypes) IsAllocatedArray

func (self ParamTypes) IsAllocatedArray() bool

func (ParamTypes) IsArray

func (self ParamTypes) IsArray() bool

func (ParamTypes) IsCallable

func (self ParamTypes) IsCallable() bool

func (ParamTypes) IsCastableTo

func (self ParamTypes) IsCastableTo(target core.IType) bool

func (ParamTypes) IsCompatible

func (self ParamTypes) IsCompatible(target core.IType) bool

func (ParamTypes) IsCompositeType

func (self ParamTypes) IsCompositeType() bool

func (ParamTypes) IsFunction

func (self ParamTypes) IsFunction() bool

func (ParamTypes) IsIncompleteArray

func (self ParamTypes) IsIncompleteArray() bool

func (ParamTypes) IsInteger

func (self ParamTypes) IsInteger() bool

func (ParamTypes) IsPointer

func (self ParamTypes) IsPointer() bool

func (ParamTypes) IsSameType

func (self ParamTypes) IsSameType(other core.IType) bool

func (ParamTypes) IsScalar

func (self ParamTypes) IsScalar() bool

func (ParamTypes) IsSigned

func (self ParamTypes) IsSigned() bool

func (ParamTypes) IsStruct

func (self ParamTypes) IsStruct() bool

func (ParamTypes) IsUnion

func (self ParamTypes) IsUnion() bool

func (ParamTypes) IsUserType

func (self ParamTypes) IsUserType() bool

func (ParamTypes) IsVararg

func (self ParamTypes) IsVararg() bool

func (ParamTypes) IsVoid

func (self ParamTypes) IsVoid() bool

func (ParamTypes) Key

func (self ParamTypes) Key() string

func (ParamTypes) MarshalJSON

func (self ParamTypes) MarshalJSON() ([]byte, error)

func (ParamTypes) MinArgc

func (self ParamTypes) MinArgc() int

func (ParamTypes) Size

func (self ParamTypes) Size() int

func (ParamTypes) String

func (self ParamTypes) String() string

type PointerType

type PointerType struct {
	ClassName   string
	PointerSize int
	BaseType    core.IType
}

PointerType

func NewPointerType

func NewPointerType(size int, baseType core.IType) *PointerType

func (PointerType) Alignment

func (self PointerType) Alignment() int

func (PointerType) AllocSize

func (self PointerType) AllocSize() int

func (PointerType) GetBaseType

func (self PointerType) GetBaseType() core.IType

func (PointerType) IsAllocatedArray

func (self PointerType) IsAllocatedArray() bool

func (PointerType) IsArray

func (self PointerType) IsArray() bool

func (PointerType) IsCallable

func (self PointerType) IsCallable() bool

func (PointerType) IsCastableTo

func (self PointerType) IsCastableTo(target core.IType) bool

func (PointerType) IsCompatible

func (self PointerType) IsCompatible(target core.IType) bool

func (PointerType) IsCompositeType

func (self PointerType) IsCompositeType() bool

func (PointerType) IsFunction

func (self PointerType) IsFunction() bool

func (PointerType) IsIncompleteArray

func (self PointerType) IsIncompleteArray() bool

func (PointerType) IsInteger

func (self PointerType) IsInteger() bool

func (PointerType) IsPointer

func (self PointerType) IsPointer() bool

func (PointerType) IsSameType

func (self PointerType) IsSameType(other core.IType) bool

func (PointerType) IsScalar

func (self PointerType) IsScalar() bool

func (PointerType) IsSigned

func (self PointerType) IsSigned() bool

func (PointerType) IsStruct

func (self PointerType) IsStruct() bool

func (PointerType) IsUnion

func (self PointerType) IsUnion() bool

func (PointerType) IsUserType

func (self PointerType) IsUserType() bool

func (PointerType) IsVoid

func (self PointerType) IsVoid() bool

func (PointerType) Key

func (self PointerType) Key() string

func (PointerType) MarshalJSON

func (self PointerType) MarshalJSON() ([]byte, error)

func (PointerType) Size

func (self PointerType) Size() int

func (PointerType) String

func (self PointerType) String() string

type PointerTypeRef

type PointerTypeRef struct {
	ClassName string
	Location  core.Location
	BaseType  core.ITypeRef
}

PointerTypeRef

func NewPointerTypeRef

func NewPointerTypeRef(baseType core.ITypeRef) *PointerTypeRef

func (PointerTypeRef) GetBaseType

func (self PointerTypeRef) GetBaseType() core.ITypeRef

func (PointerTypeRef) GetLocation

func (self PointerTypeRef) GetLocation() core.Location

func (PointerTypeRef) IsTypeRef

func (self PointerTypeRef) IsTypeRef() bool

func (PointerTypeRef) Key

func (self PointerTypeRef) Key() string

func (PointerTypeRef) MarshalJSON

func (self PointerTypeRef) MarshalJSON() ([]byte, error)

func (PointerTypeRef) String

func (self PointerTypeRef) String() string

type StructType

type StructType struct {
	ClassName string
	Location  core.Location
	Name      string
	Members   []core.ISlot
}

StructType

func NewStructType

func NewStructType(name string, membs []core.ISlot, loc core.Location) *StructType

func (StructType) Alignment

func (self StructType) Alignment() int

func (StructType) AllocSize

func (self StructType) AllocSize() int

func (StructType) GetBaseType

func (self StructType) GetBaseType() core.IType

func (StructType) GetMember

func (self StructType) GetMember(name string) core.ISlot

func (StructType) GetMemberOffset

func (self StructType) GetMemberOffset(name string) int

func (StructType) GetMemberType

func (self StructType) GetMemberType(name string) core.IType

func (StructType) GetMemberTypes

func (self StructType) GetMemberTypes() []core.IType

func (StructType) GetMembers

func (self StructType) GetMembers() []core.ISlot

func (StructType) GetName

func (self StructType) GetName() string

func (StructType) HasMember

func (self StructType) HasMember(name string) bool

func (StructType) IsAllocatedArray

func (self StructType) IsAllocatedArray() bool

func (StructType) IsArray

func (self StructType) IsArray() bool

func (StructType) IsCallable

func (self StructType) IsCallable() bool

func (StructType) IsCastableTo

func (self StructType) IsCastableTo(target core.IType) bool

func (StructType) IsCompatible

func (self StructType) IsCompatible(target core.IType) bool

func (StructType) IsCompositeType

func (self StructType) IsCompositeType() bool

func (StructType) IsFunction

func (self StructType) IsFunction() bool

func (StructType) IsIncompleteArray

func (self StructType) IsIncompleteArray() bool

func (StructType) IsInteger

func (self StructType) IsInteger() bool

func (StructType) IsPointer

func (self StructType) IsPointer() bool

func (StructType) IsSameType

func (self StructType) IsSameType(other core.IType) bool

func (StructType) IsScalar

func (self StructType) IsScalar() bool

func (StructType) IsSigned

func (self StructType) IsSigned() bool

func (StructType) IsStruct

func (self StructType) IsStruct() bool

func (StructType) IsUnion

func (self StructType) IsUnion() bool

func (StructType) IsUserType

func (self StructType) IsUserType() bool

func (StructType) IsVoid

func (self StructType) IsVoid() bool

func (StructType) Key

func (self StructType) Key() string

func (StructType) MarshalJSON

func (self StructType) MarshalJSON() ([]byte, error)

func (StructType) Size

func (self StructType) Size() int

func (StructType) String

func (self StructType) String() string

type StructTypeRef

type StructTypeRef struct {
	ClassName string
	Location  core.Location
	Name      string
}

StructTypeRef

func NewStructTypeRef

func NewStructTypeRef(loc core.Location, name string) *StructTypeRef

func (StructTypeRef) GetLocation

func (self StructTypeRef) GetLocation() core.Location

func (StructTypeRef) IsTypeRef

func (self StructTypeRef) IsTypeRef() bool

func (StructTypeRef) Key

func (self StructTypeRef) Key() string

func (StructTypeRef) MarshalJSON

func (self StructTypeRef) MarshalJSON() ([]byte, error)

func (StructTypeRef) String

func (self StructTypeRef) String() string

type TypeTable

type TypeTable struct {
	// contains filtered or unexported fields
}

func NewTypeTable

func NewTypeTable(charSize, shortSize, intSize, longSize, ptrSize int) *TypeTable

func NewTypeTableFor

func NewTypeTableFor(platformId int) *TypeTable

func NewTypeTableILP32

func NewTypeTableILP32() *TypeTable

func NewTypeTableILP64

func NewTypeTableILP64() *TypeTable

func NewTypeTableLLP64

func NewTypeTableLLP64() *TypeTable

func NewTypeTableLP64

func NewTypeTableLP64() *TypeTable

func (TypeTable) GetCharSize

func (self TypeTable) GetCharSize() int

func (TypeTable) GetIntSize

func (self TypeTable) GetIntSize() int

func (TypeTable) GetLongSize

func (self TypeTable) GetLongSize() int

func (TypeTable) GetParamType

func (self TypeTable) GetParamType(ref core.ITypeRef) core.IType

array is really a pointer on parameters.

func (TypeTable) GetPointerSize

func (self TypeTable) GetPointerSize() int

func (TypeTable) GetShortSize

func (self TypeTable) GetShortSize() int

func (TypeTable) GetType

func (self TypeTable) GetType(ref core.ITypeRef) core.IType

func (TypeTable) GetTypeRef

func (self TypeTable) GetTypeRef(target core.IType) core.ITypeRef

func (TypeTable) GetTypes

func (self TypeTable) GetTypes() []core.IType

func (TypeTable) IsDefined

func (self TypeTable) IsDefined(ref core.ITypeRef) bool

func (TypeTable) IsTypeTable

func (self TypeTable) IsTypeTable() bool

func (TypeTable) NumTypes

func (self TypeTable) NumTypes() int

func (TypeTable) PointerTo

func (self TypeTable) PointerTo(baseType core.IType) *PointerType

func (TypeTable) PtrDiffType

func (self TypeTable) PtrDiffType() core.IType

func (TypeTable) PtrDiffTypeName

func (self TypeTable) PtrDiffTypeName() string

func (TypeTable) PtrDiffTypeRef

func (self TypeTable) PtrDiffTypeRef() core.ITypeRef

func (*TypeTable) PutType

func (self *TypeTable) PutType(ref core.ITypeRef, t core.IType)

func (*TypeTable) SemanticCheck

func (self *TypeTable) SemanticCheck(errorHandler *core.ErrorHandler)

func (TypeTable) SignedChar

func (self TypeTable) SignedChar() *IntegerType

func (TypeTable) SignedInt

func (self TypeTable) SignedInt() *IntegerType

func (TypeTable) SignedLong

func (self TypeTable) SignedLong() *IntegerType

func (TypeTable) SignedShort

func (self TypeTable) SignedShort() *IntegerType

func (TypeTable) SignedStackType

func (self TypeTable) SignedStackType() *IntegerType

func (TypeTable) String

func (self TypeTable) String() string

func (TypeTable) UnsignedChar

func (self TypeTable) UnsignedChar() *IntegerType

func (TypeTable) UnsignedInt

func (self TypeTable) UnsignedInt() *IntegerType

func (TypeTable) UnsignedLong

func (self TypeTable) UnsignedLong() *IntegerType

func (TypeTable) UnsignedShort

func (self TypeTable) UnsignedShort() *IntegerType

func (TypeTable) UnsignedStackType

func (self TypeTable) UnsignedStackType() *IntegerType

func (TypeTable) VoidType

func (self TypeTable) VoidType() *VoidType

type UnionType

type UnionType struct {
	ClassName string
	Location  core.Location
	Name      string
	Members   []core.ISlot
}

UnionType

func NewUnionType

func NewUnionType(name string, membs []core.ISlot, loc core.Location) *UnionType

func (UnionType) Alignment

func (self UnionType) Alignment() int

func (UnionType) AllocSize

func (self UnionType) AllocSize() int

func (UnionType) GetBaseType

func (self UnionType) GetBaseType() core.IType

func (UnionType) GetMember

func (self UnionType) GetMember(name string) core.ISlot

func (UnionType) GetMemberOffset

func (self UnionType) GetMemberOffset(name string) int

func (UnionType) GetMemberType

func (self UnionType) GetMemberType(name string) core.IType

func (UnionType) GetMemberTypes

func (self UnionType) GetMemberTypes() []core.IType

func (UnionType) GetMembers

func (self UnionType) GetMembers() []core.ISlot

func (UnionType) GetName

func (self UnionType) GetName() string

func (UnionType) HasMember

func (self UnionType) HasMember(name string) bool

func (UnionType) IsAllocatedArray

func (self UnionType) IsAllocatedArray() bool

func (UnionType) IsArray

func (self UnionType) IsArray() bool

func (UnionType) IsCallable

func (self UnionType) IsCallable() bool

func (UnionType) IsCastableTo

func (self UnionType) IsCastableTo(target core.IType) bool

func (UnionType) IsCompatible

func (self UnionType) IsCompatible(target core.IType) bool

func (UnionType) IsCompositeType

func (self UnionType) IsCompositeType() bool

func (UnionType) IsFunction

func (self UnionType) IsFunction() bool

func (UnionType) IsIncompleteArray

func (self UnionType) IsIncompleteArray() bool

func (UnionType) IsInteger

func (self UnionType) IsInteger() bool

func (UnionType) IsPointer

func (self UnionType) IsPointer() bool

func (UnionType) IsSameType

func (self UnionType) IsSameType(other core.IType) bool

func (UnionType) IsScalar

func (self UnionType) IsScalar() bool

func (UnionType) IsSigned

func (self UnionType) IsSigned() bool

func (UnionType) IsStruct

func (self UnionType) IsStruct() bool

func (UnionType) IsUnion

func (self UnionType) IsUnion() bool

func (UnionType) IsUserType

func (self UnionType) IsUserType() bool

func (UnionType) IsVoid

func (self UnionType) IsVoid() bool

func (UnionType) Key

func (self UnionType) Key() string

func (UnionType) MarshalJSON

func (self UnionType) MarshalJSON() ([]byte, error)

func (UnionType) Size

func (self UnionType) Size() int

func (UnionType) String

func (self UnionType) String() string

type UnionTypeRef

type UnionTypeRef struct {
	ClassName string
	Location  core.Location
	Name      string
}

UnionTypeRef

func NewUnionTypeRef

func NewUnionTypeRef(loc core.Location, name string) *UnionTypeRef

func (UnionTypeRef) GetLocation

func (self UnionTypeRef) GetLocation() core.Location

func (UnionTypeRef) IsTypeRef

func (self UnionTypeRef) IsTypeRef() bool

func (UnionTypeRef) Key

func (self UnionTypeRef) Key() string

func (UnionTypeRef) MarshalJSON

func (self UnionTypeRef) MarshalJSON() ([]byte, error)

func (UnionTypeRef) String

func (self UnionTypeRef) String() string

type UserType

type UserType struct {
	ClassName string
	Location  core.Location
	Name      string
	Real      core.ITypeNode
}

UserType

func NewUserType

func NewUserType(name string, real core.ITypeNode, loc core.Location) *UserType

func (UserType) Alignment

func (self UserType) Alignment() int

func (UserType) AllocSize

func (self UserType) AllocSize() int

func (UserType) GetBaseType

func (self UserType) GetBaseType() core.IType

func (UserType) GetName

func (self UserType) GetName() string

func (UserType) GetRealType

func (self UserType) GetRealType() core.IType

func (UserType) IsAllocatedArray

func (self UserType) IsAllocatedArray() bool

func (UserType) IsArray

func (self UserType) IsArray() bool

func (UserType) IsCallable

func (self UserType) IsCallable() bool

func (UserType) IsCastableTo

func (self UserType) IsCastableTo(target core.IType) bool

func (UserType) IsCompatible

func (self UserType) IsCompatible(target core.IType) bool

func (UserType) IsCompositeType

func (self UserType) IsCompositeType() bool

func (UserType) IsFunction

func (self UserType) IsFunction() bool

func (UserType) IsIncompleteArray

func (self UserType) IsIncompleteArray() bool

func (UserType) IsInteger

func (self UserType) IsInteger() bool

func (UserType) IsPointer

func (self UserType) IsPointer() bool

func (UserType) IsSameType

func (self UserType) IsSameType(other core.IType) bool

func (UserType) IsScalar

func (self UserType) IsScalar() bool

func (UserType) IsSigned

func (self UserType) IsSigned() bool

func (UserType) IsStruct

func (self UserType) IsStruct() bool

func (UserType) IsUnion

func (self UserType) IsUnion() bool

func (UserType) IsUserType

func (self UserType) IsUserType() bool

func (UserType) IsVoid

func (self UserType) IsVoid() bool

func (UserType) Key

func (self UserType) Key() string

func (UserType) MarshalJSON

func (self UserType) MarshalJSON() ([]byte, error)

func (UserType) Size

func (self UserType) Size() int

func (UserType) String

func (self UserType) String() string

type UserTypeRef

type UserTypeRef struct {
	ClassName string
	Location  core.Location
	Name      string
}

UserTypeRef

func NewUserTypeRef

func NewUserTypeRef(loc core.Location, name string) *UserTypeRef

func (UserTypeRef) GetLocation

func (self UserTypeRef) GetLocation() core.Location

func (UserTypeRef) GetName

func (self UserTypeRef) GetName() string

func (UserTypeRef) IsTypeRef

func (self UserTypeRef) IsTypeRef() bool

func (UserTypeRef) Key

func (self UserTypeRef) Key() string

func (UserTypeRef) MarshalJSON

func (self UserTypeRef) MarshalJSON() ([]byte, error)

func (UserTypeRef) String

func (self UserTypeRef) String() string

type VoidType

type VoidType struct {
	ClassName string
}

VoidType

func NewVoidType

func NewVoidType() *VoidType

func (VoidType) Alignment

func (self VoidType) Alignment() int

func (VoidType) AllocSize

func (self VoidType) AllocSize() int

func (VoidType) GetBaseType

func (self VoidType) GetBaseType() core.IType

func (VoidType) IsAllocatedArray

func (self VoidType) IsAllocatedArray() bool

func (VoidType) IsArray

func (self VoidType) IsArray() bool

func (VoidType) IsCallable

func (self VoidType) IsCallable() bool

func (VoidType) IsCastableTo

func (self VoidType) IsCastableTo(target core.IType) bool

func (VoidType) IsCompatible

func (self VoidType) IsCompatible(target core.IType) bool

func (VoidType) IsCompositeType

func (self VoidType) IsCompositeType() bool

func (VoidType) IsFunction

func (self VoidType) IsFunction() bool

func (VoidType) IsIncompleteArray

func (self VoidType) IsIncompleteArray() bool

func (VoidType) IsInteger

func (self VoidType) IsInteger() bool

func (VoidType) IsPointer

func (self VoidType) IsPointer() bool

func (VoidType) IsSameType

func (self VoidType) IsSameType(other core.IType) bool

func (VoidType) IsScalar

func (self VoidType) IsScalar() bool

func (VoidType) IsSigned

func (self VoidType) IsSigned() bool

func (VoidType) IsStruct

func (self VoidType) IsStruct() bool

func (VoidType) IsUnion

func (self VoidType) IsUnion() bool

func (VoidType) IsUserType

func (self VoidType) IsUserType() bool

func (VoidType) IsVoid

func (self VoidType) IsVoid() bool

func (VoidType) Key

func (self VoidType) Key() string

func (VoidType) MarshalJSON

func (self VoidType) MarshalJSON() ([]byte, error)

func (VoidType) Size

func (self VoidType) Size() int

func (VoidType) String

func (self VoidType) String() string

type VoidTypeRef

type VoidTypeRef struct {
	ClassName string
	Location  core.Location
}

VoidTypeRef

func NewVoidTypeRef

func NewVoidTypeRef(loc core.Location) *VoidTypeRef

func (VoidTypeRef) GetLocation

func (self VoidTypeRef) GetLocation() core.Location

func (VoidTypeRef) IsTypeRef

func (self VoidTypeRef) IsTypeRef() bool

func (VoidTypeRef) Key

func (self VoidTypeRef) Key() string

func (VoidTypeRef) MarshalJSON

func (self VoidTypeRef) MarshalJSON() ([]byte, error)

func (VoidTypeRef) String

func (self VoidTypeRef) String() string

Jump to

Keyboard shortcuts

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