silk/reflect
Profiles: aarch64-apple-darwin, aarch64-unknown-linux-gnu, aarch64-unknown-linux-gnu-no-libc, wasm32-unknown-unknown, x86_64-unknown-linux-gnu, x86_64-unknown-linux-gnu-no-libc.
Finite aggregate metadata available only during static evaluation.
Details
Reflection retains nominal owner and visible declaration order. Descriptors have no runtime representation and disappear before runtime HIR is published.
Import as Reflect with import silk.reflect { Reflect }.
Public declarations: 7.
namedKind
pub const namedKind: u8Source-declared named aggregate kind returned by typeKind.
positionalKind
pub const positionalKind: u8Source-declared positional aggregate kind returned by typeKind.
anonymousNamedKind
pub const anonymousNamedKind: u8Occurrence-generated named aggregate kind returned by typeKind.
anonymousPositionalKind
pub const anonymousPositionalKind: u8Occurrence-generated positional aggregate kind returned by typeKind.
labeledFieldKind
pub const labeledFieldKind: u8Labeled member kind returned by fieldKind.
positionalFieldKind
pub const positionalFieldKind: u8Positional member kind returned by fieldKind.
Reflect
pub struct ReflectThe scope for Reflect operations.
Details
This owner carries no data. Select it with import silk.reflect { Reflect }
to access its inherent operations.
Associated function Reflect.typeOf
pub static fn typeOf<Owner>() -> Intrinsic.Type<Owner>Returns the canonical aggregate type descriptor for Owner.
Associated function Reflect.fields
pub static fn fields<Owner>() -> Intrinsic.Fields<Owner>Returns declaration-ordered descriptors for fields visible from this wrapper.
Associated function Reflect.typeKind
pub static fn typeKind<Owner>(static descriptor: Intrinsic.Type<Owner>) -> u8Returns the stable aggregate-kind code for descriptor.
Associated function Reflect.fieldKind
pub static fn fieldKind<Owner, Value>(static field: Intrinsic.Field<Owner, Value>) -> u8Returns whether field carries a label or a position.
Associated function Reflect.fieldLabel
pub static fn fieldLabel<Owner, Value>(static field: Intrinsic.Field<Owner, Value>) -> string<'static>Returns the source label of a labeled field.
Associated function Reflect.fieldOrdinal
pub static fn fieldOrdinal<Owner, Value>(static field: Intrinsic.Field<Owner, Value>) -> usizeReturns the source position of a positional field.
Associated function Reflect.borrowField
pub fn borrowField<Owner, Value, 'life2>(owner: &'life2 Owner, static field: Intrinsic.Field<Owner, Value>) -> &'life2 ValueBorrows exactly the runtime field authorized by one static descriptor.