class · System.Bindings
BindingRunner
public class System.Bindings.BindingRunner : System.Any
Runs a profile for larva bind (larva calls it; a profile does not).
- Kind
- class
- Namespace
- System.Bindings
- Assembly
- System.Bindings
- Access
- public, static, abstract
- Source file
Profile.ant
Inheritance
- Base classes
-
AnyBindingRunner
Methods
static method WriteSettings(s: System.Bindings.BindingSettings, output: System.String<u8>) -> void
#
The settings Configure gives, written to output for larva (one key=value a line; lists repeat the key).
static method Run(profile: System.Bindings.IBindingProfile, model: System.Bindings.BindingModel, output: System.String<u8>) -> void
#
The profile asked about every declaration of model, the names and places settled, and the binding written to
output as a description larva reads (library, namespace, class, file, enums, structs, constants, functions).
static method Unique(taken: System.Dictionary<System.String<u8>, System.String<u8>>, place: System.String<u8>, name: System.String<u8>, cName: System.String<u8>, what: System.String<u8>) -> System.String<u8>
#
name in place when nothing else has it there, else the C name (and a warning).
static method Line(text: System.StringBuilder, key: System.String<u8>, value: System.String<u8>) -> void
#
static method Both(first: System.List<System.String<u8>>, second: System.List<System.String<u8>>) -> System.List<System.String<u8>>
#
static method Retype(type: System.Bindings.CType, typedefs: System.Dictionary<System.String<u8>, System.String<u8>>) -> void
#
A number type written with typedefs' enum takes it (pointers keep their stars).
static method HeaderName(s: System.Bindings.BindingSettings, header: System.String<u8>) -> System.String<u8>
#
The name a header gives its namespace, class or file: its stem without the settings' prefixes, in Pascal case.
static method NamespaceOf(s: System.Bindings.BindingSettings, given: System.String<u8>, header: System.String<u8>) -> System.String<u8>
#
static method ClassOf(model: System.Bindings.BindingModel, given: System.String<u8>, ns: System.String<u8>, header: System.String<u8>) -> System.String<u8>
#
The class of a function or constant; one with the name of a type of its namespace gets Functions after it.
static method FileOf(s: System.Bindings.BindingSettings, given: System.String<u8>, kind: System.String<u8>, ns: System.String<u8>, cls: System.String<u8>, header: System.String<u8>) -> System.String<u8>
#
The file a declaration goes to (its stem: larva adds the language's extension); "" is the class's file.
static method Renamed(text: System.String<u8>, names: System.Dictionary<System.String<u8>, System.String<u8>>) -> System.String<u8>
#
text with every name of names replaced (SDL_Rect* → Rect*).
static method Describe(model: System.Bindings.BindingModel, typeNames: System.Dictionary<System.String<u8>, System.String<u8>>) -> System.String<u8>
#
The binding as larva's description: the first library, then each declaration after where it goes.
Inherited members (5)
GetTypemethod from AnyUndescribedmethod from AnyToStringmethod from AnyHashmethod from Anydestroymethod from Any
Source
BindingRunner as Larva HIR, decompiled from its Larva HIR.
// Runs a profile for `larva bind` (larva calls it; a profile does not).
public class System.Bindings.BindingRunner : System.Any
{
// The settings `Configure` gives, written to `output` for larva (one `key=value` a line; lists repeat the key).
static method WriteSettings(s: System.Bindings.BindingSettings, output: System.String<u8>) -> void
// The profile asked about every declaration of `model`, the names and places settled, and the binding written to
// `output` as a description larva reads (`library`, `namespace`, `class`, `file`, enums, structs, constants, functions).
static method Run(profile: System.Bindings.IBindingProfile, model: System.Bindings.BindingModel, output: System.String<u8>) -> void
// `name` in `place` when nothing else has it there, else the C name (and a warning).
static method Unique(taken: System.Dictionary<System.String<u8>, System.String<u8>>, place: System.String<u8>, name: System.String<u8>, cName: System.String<u8>, what: System.String<u8>) -> System.String<u8>
static method Line(text: System.StringBuilder, key: System.String<u8>, value: System.String<u8>) -> void
static method Both(first: System.List<System.String<u8>>, second: System.List<System.String<u8>>) -> System.List<System.String<u8>>
// A number type written with `typedefs`' enum takes it (pointers keep their stars).
static method Retype(type: System.Bindings.CType, typedefs: System.Dictionary<System.String<u8>, System.String<u8>>) -> void
// The name a header gives its namespace, class or file: its stem without the settings' prefixes, in Pascal case.
static method HeaderName(s: System.Bindings.BindingSettings, header: System.String<u8>) -> System.String<u8>
static method NamespaceOf(s: System.Bindings.BindingSettings, given: System.String<u8>, header: System.String<u8>) -> System.String<u8>
// The class of a function or constant; one with the name of a type of its namespace gets `Functions` after it.
static method ClassOf(model: System.Bindings.BindingModel, given: System.String<u8>, ns: System.String<u8>, header: System.String<u8>) -> System.String<u8>
// The file a declaration goes to (its stem: larva adds the language's extension); "" is the class's file.
static method FileOf(s: System.Bindings.BindingSettings, given: System.String<u8>, kind: System.String<u8>, ns: System.String<u8>, cls: System.String<u8>, header: System.String<u8>) -> System.String<u8>
// `text` with every name of `names` replaced (`SDL_Rect*` → `Rect*`).
static method Renamed(text: System.String<u8>, names: System.Dictionary<System.String<u8>, System.String<u8>>) -> System.String<u8>
// The binding as larva's description: the first library, then each declaration after where it goes.
static method Describe(model: System.Bindings.BindingModel, typeNames: System.Dictionary<System.String<u8>, System.String<u8>>) -> System.String<u8>
}