reflect.class.Field

One field of a class: its name, its declared type, and its schema metadata.

Reference version

Signature

class reflect.class.Field

One field of a class: its name, its declared type, and its schema metadata.

A descriptor from reflect.AnyClass.list_fields or get_field is bound to the instance it came from, so value can read it; one from Type.fields() describes the type only and is ownerless.

Source:<builtin>/reflect/ns_class/class.bamlbytes 2941237

Fields

name

string

_owner

unknown | null

Present only for handles returned from reflect.AnyClass.list_fields or get_field. Type-side descriptors returned by Type.fields() are intentionally ownerless.

Instance methods

function

metadata

(self) -> reflect.Meta

This field's schema metadata. Same value as the meta field.

function

value

<T>(self) -> T | null throws reflect.errors.TypeMismatch

Read this field from its bound owner. An ownerless type-side descriptor returns null.

Implementations

reflect.AnyClass for T

Instance methods

function

attributes

(self) -> reflect.Meta

The class declaration's schema metadata, or empty metadata when the runtime type is not a class.

function

get

<T>(self, name: string) -> T | null throws reflect.errors.TypeMismatch

Read a field as T. A missing field returns null; use has_field to distinguish that case from a present field whose value is null.

function

get_field

(self, name: string) -> reflect.class.Field | null

Return a value-bound field handle, or null when no such field exists.

function

has_field

(self, name: string) -> bool

Whether this value's runtime class declares a field called name. false when the runtime type is not a class.

function

list_fields

(self) -> reflect.class.Field[]

Reflected fields bound to this value for Field.value<T>().

function

name

(self) -> string

The rendered name of this value's concrete runtime type.

function

type

(self) -> reflect.Type

This value's concrete runtime type.

Source:<builtin>/reflect/reflect.bamlbytes 60926122