gh-pages / com.nextfaze.devfun.function

Package com.nextfaze.devfun.function

Types

Name Summary
ArgsProperties interface ArgsProperties
Properties interface for @Args.
ArgumentsTransformer interface ArgumentsTransformer : FunctionTransformer
A function transformer that tells DevFun how to generate functions for annotation-defined arguments.
DeveloperArgumentsProperties interface DeveloperArgumentsProperties
Properties interface for @DeveloperArguments.
DeveloperFunctionProperties interface DeveloperFunctionProperties
Properties interface for @DeveloperFunction.
DeveloperPropertyProperties interface DeveloperPropertyProperties
Properties interface for @DeveloperProperty.
FunctionDefinition interface FunctionDefinition
Functions/methods annotated with DeveloperFunction will be defined using this interface at compile time.
FunctionItem interface FunctionItem
Items are converted from FunctionDefinition at run-time via FunctionTransformer.
FunctionTransformer interface FunctionTransformer
Function transformers filter and/or convert a FunctionDefinition to FunctionItem.
InvokeResult interface InvokeResult
Function invocations will be wrapped by this.
PropertyTransformer interface PropertyTransformer : FunctionTransformer
A function transformer that tells DevFun how to render Kotlin properties.
SimpleFunctionItem open class SimpleFunctionItem : FunctionItem
Convenience class for FunctionItem to extend from, providing standard equals and hashCode implementations.
SingleFunctionTransformer object SingleFunctionTransformer : FunctionTransformer
The default transformer. Effectively just wraps the FunctionDefinition to a FunctionItem (1:1).

Annotations

Name Summary
Args annotation class Args
Nested annotation for declaring the arguments of a function invocation.
DeveloperArguments annotation class DeveloperArguments
An alternative to DeveloperFunction that allows you to provide arguments for multiple invocations.
DeveloperFunction annotation class DeveloperFunction
Functions/methods annotated with this will be shown on the Developer Menu (and other modules).
DeveloperProperty annotation class DeveloperProperty
An annotation that, when used on Kotlin properties, allows DevFun to provide the means of getting/setting properties on the fly.

Type Aliases

Name Summary
FunctionArgs typealias FunctionArgs = List<Any?>?
Definition for user-supplied arguments (usually supplied from a FunctionTransformer).
FunctionInvoke typealias FunctionInvoke = (receiver: Any?, args: List<Any?>) -> Any?
Definition of generated function to call that invokes the function definition.