The kind of a function object.
In Julian, a function can be defined in different ways - as a global function, a class member method, a lambda, etc. When holding the function object, calling getFunctionKind()
will return a value of this type.
Type | Name | Value |
---|---|---|
constant | GLOBAL | 0 |
constant | INSTANCE_METHOD | 1 |
constant | STATIC_METHOD | 2 |
constant | CONSTRUCTOR | 3 |
constant | LAMBDA | 4 |
constant | INSTANCE_METHOD_GROUP | 5 |
constant | STATIC_METHOD_GROUP | 6 |
public const FunctionKind GLOBAL = 0
A global function defined outside of any types.
public const FunctionKind INSTANCE_METHOD = 1
public const FunctionKind STATIC_METHOD = 2
public const FunctionKind CONSTRUCTOR = 3
public const FunctionKind LAMBDA = 4
A lambda, without differentiating the containing function, which itself can be one of these kinds.
public const FunctionKind INSTANCE_METHOD_GROUP = 5
A group of instance member methods.
public const FunctionKind STATIC_METHOD_GROUP = 6
A group of static member methods. This also applies for extension method group.