Versions in this module Expand all Collapse all v0 v0.1.2 Apr 18, 2024 Changes in this version + const ANY + const ANY_ARRAY + const ARRAY + const BOOL + const BOOL_ARRAY + const CHAR16 + const CHAR16_ARRAY + const CHAR32 + const CHAR32_ARRAY + const CHAR8 + const CHAR8_ARRAY + const FLOAT32 + const FLOAT32_ARRAY + const FLOAT64 + const FLOAT64_ARRAY + const HANDLE + const HANDLE_ARRAY + const INT16 + const INT16_ARRAY + const INT32 + const INT32_ARRAY + const INT64 + const INT64_ARRAY + const INT8 + const INT8_ARRAY + const METAFFI_TYPE_ANY + const METAFFI_TYPE_ARRAY + const METAFFI_TYPE_BOOL + const METAFFI_TYPE_BOOL_ARRAY + const METAFFI_TYPE_CALLABLE + const METAFFI_TYPE_CHAR16 + const METAFFI_TYPE_CHAR16_ARRAY + const METAFFI_TYPE_CHAR32 + const METAFFI_TYPE_CHAR32_ARRAY + const METAFFI_TYPE_CHAR8 + const METAFFI_TYPE_CHAR8_ARRAY + const METAFFI_TYPE_FLOAT32 + const METAFFI_TYPE_FLOAT32_ARRAY + const METAFFI_TYPE_FLOAT64 + const METAFFI_TYPE_FLOAT64_ARRAY + const METAFFI_TYPE_HANDLE + const METAFFI_TYPE_HANDLE_ARRAY + const METAFFI_TYPE_INT16 + const METAFFI_TYPE_INT16_ARRAY + const METAFFI_TYPE_INT32 + const METAFFI_TYPE_INT32_ARRAY + const METAFFI_TYPE_INT64 + const METAFFI_TYPE_INT64_ARRAY + const METAFFI_TYPE_INT8 + const METAFFI_TYPE_INT8_ARRAY + const METAFFI_TYPE_NULL + const METAFFI_TYPE_SIZE + const METAFFI_TYPE_SIZE_ARRAY + const METAFFI_TYPE_STRING16 + const METAFFI_TYPE_STRING16_ARRAY + const METAFFI_TYPE_STRING32 + const METAFFI_TYPE_STRING32_ARRAY + const METAFFI_TYPE_STRING8 + const METAFFI_TYPE_STRING8_ARRAY + const METAFFI_TYPE_UINT16 + const METAFFI_TYPE_UINT16_ARRAY + const METAFFI_TYPE_UINT32 + const METAFFI_TYPE_UINT32_ARRAY + const METAFFI_TYPE_UINT64 + const METAFFI_TYPE_UINT64_ARRAY + const METAFFI_TYPE_UINT8 + const METAFFI_TYPE_UINT8_ARRAY + const NULL + const SIZE + const SIZE_ARRAY + const STRING16 + const STRING16_ARRAY + const STRING32 + const STRING32_ARRAY + const STRING8 + const STRING8_ARRAY + const UINT16 + const UINT16_ARRAY + const UINT32 + const UINT32_ARRAY + const UINT64 + const UINT64_ARRAY + const UINT8 + const UINT8_ARRAY + var TypeStringToEnumName = map[MetaFFIType]string + var TypeStringToTypeEnum = map[MetaFFIType]uint64 + func ArgMetaFFIType(arg *ArgDefinition) uint64 + func DefaultParamComparer(left *ArgDefinition, right *ArgDefinition) bool + func IsMetaFFIType(metaffiType string) bool + type ArgDefinition struct + Comment string + Dimensions int + IsOptional bool + Name string + Tags map[string]string + Type MetaFFIType + TypeAlias string + func NewArgArrayDefinition(name string, ffiType MetaFFIType, dimensions int) *ArgDefinition + func NewArgArrayDefinitionWithAlias(name string, ffiType MetaFFIType, dimensions int, alias string) *ArgDefinition + func NewArgDefinition(name string, ffiType MetaFFIType) *ArgDefinition + func NewArgDefinitionWithAlias(name string, ffiType MetaFFIType, alias string) *ArgDefinition + func (this *ArgDefinition) AppendComment(comment string) + func (this *ArgDefinition) Duplicate() *ArgDefinition + func (this *ArgDefinition) GetMetaFFITypeAlias() MetaFFITypeInfo + func (this *ArgDefinition) GetTypeOrAlias() string + func (this *ArgDefinition) IsAny() bool + func (this *ArgDefinition) IsArray() bool + func (this *ArgDefinition) IsBool() bool + func (this *ArgDefinition) IsHandle() bool + func (this *ArgDefinition) IsHandleTypeAlias() bool + func (this *ArgDefinition) IsInteger() bool + func (this *ArgDefinition) IsString() bool + func (this *ArgDefinition) IsTypeAlias() bool + func (this *ArgDefinition) SetAlias(alias string) + func (this *ArgDefinition) SetTag(tag string, val string) + type ClassDefinition struct + Comment string + Constructors []*ConstructorDefinition + Fields []*FieldDefinition + FunctionPath map[string]string + Methods []*MethodDefinition + Name string + Releaser *ReleaseDefinition + Tags map[string]string + func NewClassDefinition(name string) *ClassDefinition + func (this *ClassDefinition) AddConstructor(definition *ConstructorDefinition) + func (this *ClassDefinition) AddField(f *FieldDefinition) + func (this *ClassDefinition) AddMethod(def *MethodDefinition) + func (this *ClassDefinition) AppendComment(comment string) + func (this *ClassDefinition) SetFunctionPath(key string, val string) + func (this *ClassDefinition) SetTag(tag string, val string) + type Commentable interface + AppendComment func(comment string) + type ConstructorDefinition struct + func NewConstructorDefinition(name string) *ConstructorDefinition + func NewConstructorDefinitionFromFunctionDefinition(f *FunctionDefinition) *ConstructorDefinition + func (this *ConstructorDefinition) Duplicate() *ConstructorDefinition + func (this *ConstructorDefinition) GetParent() *ClassDefinition + func (this *ConstructorDefinition) IsMethod() bool + func (this *ConstructorDefinition) SetParent(parent *ClassDefinition) + type EntityIDer interface + GetEntityIDName func() string + type FieldDefinition struct + Getter *MethodDefinition + Setter *MethodDefinition + func NewFieldArrayDefinitionWithAlias(cls *ClassDefinition, name string, ffiType MetaFFIType, dimensions int, ...) *FieldDefinition + func NewFieldDefinition(cls *ClassDefinition, name string, ffiType MetaFFIType, getter string, ...) *FieldDefinition + func NewFieldDefinitionWithAlias(cls *ClassDefinition, name string, ffiType MetaFFIType, alias string, ...) *FieldDefinition + func (this *FieldDefinition) GetEntityIDName() string + func (this *FieldDefinition) SetParent(cls *ClassDefinition) + type FunctionDefinition struct + Comment string + FunctionPath map[string]string + Name string + OverloadIndex int32 + Parameters []*ArgDefinition + ReturnValues []*ArgDefinition + Tags map[string]string + func NewFunctionDefinition(name string) *FunctionDefinition + func (this *FunctionDefinition) AddParameter(definition *ArgDefinition) *FunctionDefinition + func (this *FunctionDefinition) AddReturnValues(definition *ArgDefinition) *FunctionDefinition + func (this *FunctionDefinition) AppendComment(comment string) + func (this *FunctionDefinition) Duplicate() *FunctionDefinition + func (this *FunctionDefinition) EqualsSignature(f *FunctionDefinition, ...) bool + func (this *FunctionDefinition) FunctionPathAsString(definition *IDLDefinition) string + func (this *FunctionDefinition) GetEntityIDName() string + func (this *FunctionDefinition) GetFirstIndexOfOptionalParameter() int + func (this *FunctionDefinition) GetFunctionPath(key string) string + func (this *FunctionDefinition) GetNameWithOverloadIndex() string + func (this *FunctionDefinition) GetOverloadIndexIfExists() string + func (this *FunctionDefinition) GetParametersMetaFFITypeInfo() []MetaFFITypeInfo + func (this *FunctionDefinition) GetReturnValuesMetaFFITypeInfo() []MetaFFITypeInfo + func (this *FunctionDefinition) IsMethod() bool + func (this *FunctionDefinition) SetFunctionPath(key string, val string) + func (this *FunctionDefinition) SetTag(tag string, val string) + type FunctionPather interface + GetFunctionPath func(key string) string + SetFunctionPath func(key string, val string) + type GlobalDefinition struct + Getter *FunctionDefinition + Setter *FunctionDefinition + func NewGlobalDefinition(name string, ffiType MetaFFIType, getter string, setter string) *GlobalDefinition + func NewGlobalDefinitionWithAlias(name string, ffiType MetaFFIType, alias string, getter string, setter string) *GlobalDefinition + func (this *GlobalDefinition) GetEntityIDName() string + type IDLDefinition struct + IDLExtension string + IDLFilenameWithExtension string + IDLFullPath string + IDLSource string + MetaFFIGuestLib string + Modules []*ModuleDefinition + TargetLanguage string + func NewIDLDefinition(idlFullPath string, targetLanguage string) *IDLDefinition + func NewIDLDefinitionFromJSON(idlDefinitionJson string) (*IDLDefinition, error) + func (this *IDLDefinition) AddModule(m *ModuleDefinition) + func (this *IDLDefinition) FinalizeConstruction() + func (this *IDLDefinition) ReplaceKeywords(mapping map[string]string) + func (this *IDLDefinition) String() string + func (this *IDLDefinition) ToJSON() (string, error) + type MetaFFIType string + type MetaFFITypeInfo struct + Alias string + Dimensions int + StringType MetaFFIType + Type uint64 + func (m *MetaFFITypeInfo) AsCMetaFFITypeInfo() C.struct_metaffi_type_info + func (this *MetaFFITypeInfo) FillMetaFFITypeFromStringMetaFFIType() + type MethodDefinition struct + InstanceRequired bool + func NewMethodDefinition(parent *ClassDefinition, name string, instanceRequired bool) *MethodDefinition + func NewMethodDefinitionWithFunction(parent *ClassDefinition, function *FunctionDefinition, instanceRequired bool) *MethodDefinition + func (this *MethodDefinition) AddParameter(definition *ArgDefinition) *MethodDefinition + func (this *MethodDefinition) AddReturnValues(definition *ArgDefinition) *MethodDefinition + func (this *MethodDefinition) Duplicate() *MethodDefinition + func (this *MethodDefinition) FunctionPathAsString(definition *IDLDefinition) string + func (this *MethodDefinition) GetEntityIDName() string + func (this *MethodDefinition) GetParent() *ClassDefinition + func (this *MethodDefinition) IsMethod() bool + func (this *MethodDefinition) SetParent(parent *ClassDefinition) + type MethodType string + const CONSTRUCTOR + const DESTRUCTOR + const FUNCTION + const METHOD + type ModuleDefinition struct + Classes []*ClassDefinition + Comment string + ExternalResources []string + Functions []*FunctionDefinition + Globals []*GlobalDefinition + Name string + Tags map[string]string + func NewModuleDefinition(name string) *ModuleDefinition + func (this *ModuleDefinition) AddClass(c *ClassDefinition) + func (this *ModuleDefinition) AddClasses(cs []*ClassDefinition) + func (this *ModuleDefinition) AddExternalResource(r string) + func (this *ModuleDefinition) AddExternalResourceIfNotExist(r string) + func (this *ModuleDefinition) AddFunction(f *FunctionDefinition) + func (this *ModuleDefinition) AddFunctions(fs []*FunctionDefinition) + func (this *ModuleDefinition) AddGlobal(g *GlobalDefinition) + func (this *ModuleDefinition) AddGlobals(gs []*GlobalDefinition) + func (this *ModuleDefinition) AppendComment(comment string) + func (this *ModuleDefinition) GetCallablesByName(name string, searchFunctions bool, searchMethods bool, searchConstructors bool) (functions []*FunctionDefinition, methods []*MethodDefinition, ...) + func (this *ModuleDefinition) GetCallablesWithOptionalParameters(searchFunctions bool, searchMethods bool, searchConstructors bool) (functions []*FunctionDefinition, methods []*MethodDefinition, ...) + func (this *ModuleDefinition) GetFunctionPathSet(key string) []string + func (this *ModuleDefinition) GetOverloadedCallables(searchFunctions bool, searchMethods bool, searchConstructors bool) (functions [][]*FunctionDefinition, methods [][]*MethodDefinition, ...) + func (this *ModuleDefinition) IsContainsClass(clsName string) bool + func (this *ModuleDefinition) SetFunctionPath(key string, val string) + func (this *ModuleDefinition) SetTag(tag string, val string) + type ReleaseDefinition struct + func NewReleaserDefinition(parent *ClassDefinition, name string) *ReleaseDefinition + func NewReleaserDefinitionFromFunctionDefinition(parent *ClassDefinition, f *FunctionDefinition) *ReleaseDefinition + func (this *ReleaseDefinition) IsMethod() bool + type Taggable interface + SetTag func(tag string, val string)