interface · System.Bindings

IBindingProfile

public interface System.Bindings.IBindingProfile

What larva bind --profile asks a profile, in this order: Configure (once, before the headers are read), Start (with everything read), Enum, Struct, Constant and Function for each declaration (false leaves it out), Name for each name not set by those hooks, then Finish. BindingProfile answers each one as the settings say.

Kind
interface
Namespace
System.Bindings
Assembly
System.Bindings
Access
public
Source file
Profile.ant

Inheritance

Implemented by
BindingProfile

Private and internal members (8)

method Configure(settings: System.Bindings.BindingSettings) -> void
#

private abstract

The binding's settings: what is read, where it goes, the rules names follow.

method Start(model: System.Bindings.BindingModel) -> void
#

private abstract

Everything the headers declare, before each declaration is asked about: make enums from constants, rename in bulk.

method Enum(e: System.Bindings.CEnum) -> bool
#

private abstract

A C enum (or one Start made); false leaves it out (its values become constants).

method Struct(s: System.Bindings.CStruct) -> bool
#

private abstract

A struct or union; false leaves it out.

method Constant(c: System.Bindings.CConstant) -> bool
#

private abstract

A constant; false leaves it out.

method Function(f: System.Bindings.CFunction) -> bool
#

private abstract

A function; false leaves it out.

method Name(kind: System.Bindings.NameKind, cName: System.String<u8>, proposed: System.String<u8>) -> System.String<u8>
#

private abstract

The name cName (of that kind) gets: proposed is what the settings make of it.

method Finish(model: System.Bindings.BindingModel) -> void
#

private abstract

The whole binding, named and placed, before it is written: last changes.

Source

IBindingProfile as Larva HIR, decompiled from its Larva HIR.

System.Bindings.IBindingProfile.hir
// What `larva bind --profile` asks a profile, in this order: `Configure` (once, before the headers are read), `Start`
// (with everything read), `Enum`, `Struct`, `Constant` and `Function` for each declaration (false leaves it out),
// `Name` for each name not set by those hooks, then `Finish`. `BindingProfile` answers each one as the settings say.
public interface System.Bindings.IBindingProfile
{
    // The binding's settings: what is read, where it goes, the rules names follow.
    method Configure(settings: System.Bindings.BindingSettings) -> void
    // Everything the headers declare, before each declaration is asked about: make enums from constants, rename in bulk.
    method Start(model: System.Bindings.BindingModel) -> void
    // A C enum (or one `Start` made); false leaves it out (its values become constants).
    method Enum(e: System.Bindings.CEnum) -> bool
    // A struct or union; false leaves it out.
    method Struct(s: System.Bindings.CStruct) -> bool
    // A constant; false leaves it out.
    method Constant(c: System.Bindings.CConstant) -> bool
    // A function; false leaves it out.
    method Function(f: System.Bindings.CFunction) -> bool
    // The name `cName` (of that kind) gets: `proposed` is what the settings make of it.
    method Name(kind: System.Bindings.NameKind, cName: System.String<u8>, proposed: System.String<u8>) -> System.String<u8>
    // The whole binding, named and placed, before it is written: last changes.
    method Finish(model: System.Bindings.BindingModel) -> void
}
Esc