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"));
}
| Inherited Attributes |
| Attributes inherited from: Object |
| Attributes inherited from: FunctionModel<Type,Arguments> |
| Attributes inherited from: Generic |
| Attributes inherited from: Member<Container,Kind> |
| Attributes inherited from: Model |
| Methods | |
| bind | Source Code Type-unsafe container binding, to be used when the container type is unknown until runtime. This has the same behaviour as invoking this Refined declaration: bind |
| Inherited Methods |
| Methods inherited from: Object |
| Methods inherited from: Member<Container,Kind> |