A function model represents the model of a Ceylon function that you can invoke and inspect.
A method is a member function: it is declared on classes or interfaces.
This is both a FunctionModel
and a Member
: you can invoke it with an instance value
to bind it to that instance and obtain a Function
:
class Outer(){ shared String foo(String name) => "Hello "+name; } void test(){ Method<Outer,String,[String]> method = `Outer.foo`; // Bind it to an instance value Function<String,[String]> f = method(Outer()); // This will print: Hello Stef print(f("Stef")); }
no type hierarchy
no subtypes hierarchy
Attributes | |
declaration | Source Codeshared formal FunctionDeclaration declaration This function's declaration. |
Inherited Attributes |
Attributes inherited from: Object |
Attributes inherited from: Declared |
Attributes inherited from: FunctionModel<Type,Arguments> |
Attributes inherited from: Functional |
Attributes inherited from: Generic |
Attributes inherited from: Member<Container,Kind> |
Attributes inherited from: Model |
Methods | |
bind | Source Codeshared formal Function<Type,Arguments> bind(Anything container) Type-unsafe container binding, to be used when the container type is unknown until runtime. A null argument is only permitted for This has the same behaviour as invoking this Refines Qualified.bind |
Inherited Methods |
Methods inherited from: Object |
Methods inherited from: Qualified<Kind,Container> |