An attribute model represents the model of a Ceylon attribute that you can read and inspect.

An attribute is a member value: it is declared on classes or interfaces.

This is both a ValueModel and a Member: you can invoke it with an instance value to bind it to that instance and obtain a Value:

class Outer(){
    shared String foo = "Hello";

void test(){
    Attribute<Outer,String> attribute = ``;
    Value<String> boundAttribute = attribute(Outer());
    // This will print: Hello

no type hierarchy

no subtypes hierarchy

Inherited Attributes
Attributes inherited from: Object
Attributes inherited from: Member<Container,Kind>
Attributes inherited from: Model
Attributes inherited from: ValueModel<Get,Set>
bindSource Codeshared formal Value<Get,Set> bind(Object container)

Type-unsafe container binding, to be used when the container type is unknown until runtime.

This has the same behaviour as invoking this Member directly, but exchanges compile-time type safety with runtime checks.

Refines Member.bind
Inherited Methods
Methods inherited from: Object
Methods inherited from: Member<Container,Kind>