Documentation is generated using Dokka.

All Types

Name Summary
com.nextfaze.devfun.internal.android.AbstractActivityLifecycleCallbacks  
com.nextfaze.devfun.core.AbstractDevFunModule Implementation of DevFunModule providing various convenience functions.
com.nextfaze.devfun.httpd.AbstractUriHandler  
android.app.Application.ActivityLifecycleCallbacks (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.core.ActivityProvider Function signature of DevFun’s activity tracker/provider.
com.nextfaze.devfun.core.ActivityTracker Activity tracker that provides the currently (resumed) activity if present.
com.nextfaze.devfun.inject.AndroidInstanceProvider  
com.nextfaze.devfun.internal.android.AndroidInstanceProviderInternal  
java.lang.Appendable (extensions in package com.nextfaze.devfun.internal.string)  
com.nextfaze.devfun.function.Args Nested annotation for declaring the arguments of a function invocation.
com.nextfaze.devfun.function.ArgsProperties Properties interface for @Args.
com.nextfaze.devfun.function.ArgumentsTransformer A function transformer that tells DevFun how to generate functions for annotation-defined arguments.
com.nextfaze.devfun.overlay.AttachListener  
wiki.Background Background and History
com.nextfaze.devfun.internal.android.BaseDialogFragment  
com.nextfaze.devfun.inject.CacheLevel Controls how aggressively the CompositeInstanceProvider caches the sources of class instances.
com.nextfaze.devfun.inject.CapturingInstanceProvider An instance provider that requests an instance of a class from a captured lambda.
com.nextfaze.devfun.category.CategoryDefinition Classes annotated with DeveloperCategory will be defined using this interface at compile time.
com.nextfaze.devfun.category.CategoryItem Items are derived from CategoryDefinition at run-time during FunctionDefinition processing.
java.lang.Class (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.inject.ClassInstanceNotFoundException Exception thrown when attempting to provide a type that was not found from any InstanceProvider.
com.nextfaze.devfun.overlay.ClickListener  
com.nextfaze.devfun.menu.controllers.CogOverlay Controls the floating cog overlay.
kotlin.collections.Collection (extensions in package com.nextfaze.devfun.invoke.view.types)  
com.nextfaze.devfun.invoke.view.ColorPicker Annotated Int value parameters will render a color picker view rather than an input/edit for use with invoke UI.
wiki.Components DevFun is designed to be modular, in terms of both its dependencies (limiting impact to main source tree) and its plugin-like architecture. Component Dependencies
com.nextfaze.devfun.core.Composite Use by providers to facilitate user provided types T to the composting provider.
com.nextfaze.devfun.inject.CompositeInstanceProvider Instance provider that delegates to other providers.
com.nextfaze.devfun.invoke.CompositeParameterViewFactoryProvider A ParameterViewFactoryProvider that delegates to other providers.
com.nextfaze.devfun.view.CompositeViewFactoryProvider A ViewFactoryProvider that delegates to other providers.
com.nextfaze.devfun.inject.Constructable Tag to allow classes to be instantiated when no other InstanceProvider was able to provide the class.
com.nextfaze.devfun.inject.ConstructableException Thrown when ConstructingInstanceProvider fails to create a new instance of a class.
com.nextfaze.devfun.inject.ConstructingInstanceProvider Provides objects via instance construction. Type must be annotated with Constructable.
android.content.Context (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.category.ContextCategory DeveloperCategory annotation used to declare the “Context” category.
com.nextfaze.devfun.reference.Dagger2Component Annotated functions (fun, properties, or property getters (@get:Dagger2Component)) will be checked/used as Dagger 2 components.
com.nextfaze.devfun.reference.Dagger2ComponentProperties Properties interface for @Dagger2Component.
com.nextfaze.devfun.inject.dagger2.Dagger2InstanceProvider  
com.nextfaze.devfun.reference.Dagger2Scope Some range of scopes for use with Dagger2Component. Priority is based on their ordinal value (higher = broader scope).
com.nextfaze.devfun.compiler.DaggerProcessor Base AbstractProcessor class with Dagger support.
com.nextfaze.devfun.DebugException This will not be caught by the standard DevFun error handler.
wiki.Dependency Injection DevFun supports a rudimentary form of dependency injection using an InstanceProvider (a CompositeInstanceProvider at DevFun.instanceProviders).
com.nextfaze.devfun.compiler.DevAnnotationProcessor Annotation processor for DeveloperAnnotation to generate properties interfaces.
com.nextfaze.devfun.core.DevFun Primary entry point and initializer of DevFun and associated libraries.
com.nextfaze.devfun.gradle.plugin.DevFunExtension Gradle DSL for configuring DevFun.
com.nextfaze.devfun.generated.DevFunGenerated Generated classes will implement this, which will be loaded using Java’s ServiceLoader.
com.nextfaze.devfun.gradle.plugin.DevFunGradlePlugin The DevFun Gradle plugin. Allows use of the script configuration DSL.
com.nextfaze.devfun.core.DevFunInitializerProvider Used to automatically initialize DevFun without user input.
com.nextfaze.devfun.core.DevFunModule Modules that extend/use the functionality of DevFun.
com.nextfaze.devfun.compiler.DevFunProcessor Annotation processor for DeveloperAnnotation annotated annotations.
com.nextfaze.devfun.httpd.DevHttpD  
com.nextfaze.devfun.menu.DevMenu  
com.nextfaze.devfun.stetho.DevStetho  
com.nextfaze.devfun.DeveloperAnnotation Annotation used to by DevFun to “tag” references to other DevFun/developer -related annotations.
com.nextfaze.devfun.function.DeveloperArguments An alternative to DeveloperFunction that allows you to provide arguments for multiple invocations.
com.nextfaze.devfun.function.DeveloperArgumentsProperties Properties interface for @DeveloperArguments.
com.nextfaze.devfun.category.DeveloperCategory This annotation is optional, and is used to change the category’s name/order or the group of the functions defined in this class.
com.nextfaze.devfun.category.DeveloperCategoryProperties Properties interface for @DeveloperCategory.
com.nextfaze.devfun.function.DeveloperFunction Functions/methods annotated with this will be shown on the Developer Menu (and other modules).
com.nextfaze.devfun.function.DeveloperFunctionProperties Properties interface for @DeveloperFunction.
com.nextfaze.devfun.reference.DeveloperLogger Annotated references will be rendered as an overlay.
com.nextfaze.devfun.reference.DeveloperLoggerProperties Properties interface for @DeveloperLogger.
com.nextfaze.devfun.menu.DeveloperMenu  
com.nextfaze.devfun.function.DeveloperProperty An annotation that, when used on Kotlin properties, allows DevFun to provide the means of getting/setting properties on the fly.
com.nextfaze.devfun.function.DeveloperPropertyProperties Properties interface for @DeveloperProperty.
com.nextfaze.devfun.reference.DeveloperReference Annotated elements will be recorded by DevFun for later retrieval via devFun.developerReferences<DeveloperReference>().
com.nextfaze.devfun.reference.DeveloperReferenceProperties Properties interface for @DeveloperReference.
androidx.fragment.app.DialogFragment (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.overlay.Dock  
com.nextfaze.devfun.error.ErrorDetails Details/information of an error.
com.nextfaze.devfun.error.ErrorHandler Handles errors that occur during/throughout DevFun.
com.nextfaze.devfun.invoke.view.simple.ErrorParameterView A simple view that should tell the user if a view could not be injected/rendered.
com.nextfaze.devfun.internal.exception.ExceptionCategoryDefinition  
com.nextfaze.devfun.internal.exception.ExceptionCategoryItem  
com.nextfaze.devfun.internal.exception.ExceptionFunctionDefinition  
com.nextfaze.devfun.internal.exception.ExceptionFunctionItem  
com.nextfaze.devfun.internal.exception.ExceptionInvokeResult  
com.nextfaze.devfun.reference.FieldReference A reference to a field generated by DeveloperReference.
com.nextfaze.devfun.internal.FocusChangeListener Function signature of a listener for Window focus changes.
com.nextfaze.devfun.core.ForegroundChangeListener Function signature of callbacks for foreground status changes.
com.nextfaze.devfun.core.ForegroundTracker Application foreground state tracker.
androidx.fragment.app.Fragment (extensions in package com.nextfaze.devfun.internal.android)  
androidx.fragment.app.FragmentActivity (extensions in package com.nextfaze.devfun.internal.android)  
androidx.fragment.app.FragmentManager (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.invoke.view.From Annotate parameters with this specifying a ValueSource class to initialize invoke views with an initial value.
com.nextfaze.devfun.function.FunctionArgs Definition for user-supplied arguments (usually supplied from a FunctionTransformer).
com.nextfaze.devfun.function.FunctionDefinition Functions/methods annotated with DeveloperFunction will be defined using this interface at compile time.
com.nextfaze.devfun.function.FunctionInvoke Definition of generated function to call that invokes the function definition.
com.nextfaze.devfun.function.FunctionItem Items are converted from FunctionDefinition at run-time via FunctionTransformer.
com.nextfaze.devfun.function.FunctionTransformer Function transformers filter and/or convert a FunctionDefinition to FunctionItem.
com.nextfaze.devfun.utils.glide.GlideUtils Utility functions for Glide.
com.nextfaze.devfun.httpd.HttpDRouter  
com.nextfaze.devfun.httpd.frontend.HttpFrontEnd  
com.nextfaze.devfun.inject.dagger2.InjectFromDagger2 This module adds rudimentary support for searching Dagger 2.x component graphs for object instances.
com.nextfaze.devfun.invoke.view.simple.InjectedParameterView A simple view that should tell the user if a parameter is being injected.
com.nextfaze.devfun.compiler.Injector Dagger injector for DaggerProcessor.
com.nextfaze.devfun.inject.InstanceProvider Provides object instances for one or more types.
com.nextfaze.devfun.invoke.view.InvokeParameterView Parameter views rendered for the Invoke UI will be wrapped with this type (to provide a label etc.).
com.nextfaze.devfun.function.InvokeResult Function invocations will be wrapped by this.
com.nextfaze.devfun.invoke.Invoker Used to invoke a FunctionItem or UiFunction and automatically handles parameter injection and errors.
kotlin.reflect.KClass (extensions in package com.nextfaze.devfun.inject)  
kotlin.reflect.KClass (extensions in package com.nextfaze.devfun.internal.android)  
kotlin.reflect.KClass (extensions in package com.nextfaze.devfun.internal)  
com.nextfaze.devfun.internal.pref.KNullablePreference  
com.nextfaze.devfun.inject.KObjectInstanceProvider Handles Kotlin object and companion object types.
com.nextfaze.devfun.internal.pref.KPreference  
com.nextfaze.devfun.internal.pref.KSharedPreferences  
com.nextfaze.devfun.internal.KeyEventListener Function signature of a listener for Window key events.
com.nextfaze.devfun.menu.controllers.KeySequence Allows toggling the Developer Menu using button/key sequences.
com.nextfaze.devfun.gradle.plugin.KotlinGradlePlugin The DevFun Kotlin Gradle plugin. Configures the KAPT options.
com.nextfaze.devfun.utils.leakcanary.LeakCanaryUtils Utility functions for Leak Canary.
wiki.Lifecycle An overview of the lifecycle of the KAPT generation to runtime transformation and function invocation process.
org.slf4j.Logger (extensions in package com.nextfaze.devfun.internal.log)  
java.lang.reflect.Member (extensions in package com.nextfaze.devfun.internal.reflect)  
com.nextfaze.devfun.menu.MenuController  
com.nextfaze.devfun.menu.MenuHeader The view type/key used by DevMenu to find/inflate the menu header view.
java.lang.reflect.Method (extensions in package com.nextfaze.devfun.internal)  
java.lang.reflect.Method (extensions in package com.nextfaze.devfun.invoke)  
com.nextfaze.devfun.reference.MethodReference A reference to a method generated by DeveloperReference.
com.nextfaze.devfun.internal.android.OnActivityCreated  
com.nextfaze.devfun.internal.android.OnActivityDestroyed  
com.nextfaze.devfun.internal.android.OnActivityPaused  
com.nextfaze.devfun.internal.android.OnActivityResumed  
com.nextfaze.devfun.internal.android.OnActivitySave  
com.nextfaze.devfun.internal.android.OnActivityStarted  
com.nextfaze.devfun.internal.android.OnActivityStopped  
com.nextfaze.devfun.internal.pref.OnChange  
com.nextfaze.devfun.invoke.OnClick  
com.nextfaze.devfun.overlay.logger.OnClick  
com.nextfaze.devfun.core.OnInitialized Callback signature if/when DevFun has been initialized.
com.nextfaze.devfun.overlay.logger.OverlayLogger An overlay logger is a floating semi-transparent TextView that will display the .toString() of a function, property, or class.
com.nextfaze.devfun.overlay.logger.OverlayLogging Handles the creation, maintenance, and permissions of OverlayLogger instances.
com.nextfaze.devfun.overlay.OverlayManager Handles creation, destruction, and visibility of overlays.
com.nextfaze.devfun.overlay.OverlayPermissionListener  
com.nextfaze.devfun.overlay.OverlayPermissions Handles overlay permissions.
com.nextfaze.devfun.overlay.OverlayReason  
com.nextfaze.devfun.overlay.OverlayWindow Overlay windows are used by DevFun to display the loggers DeveloperLogger and DevMenu cog.
com.nextfaze.devfun.stetho.Page  
com.nextfaze.devfun.invoke.Parameter Effectively just a wrapper for KParameter to allow libraries to use it without declaring a dependency on the kotlin-reflect lib.
com.nextfaze.devfun.invoke.ParameterViewFactoryProvider A factory that creates views based on parameter attributes to be used when invoking a function with non-injectable parameter types.
com.nextfaze.devfun.function.PropertyTransformer A function transformer that tells DevFun how to render Kotlin properties.
com.nextfaze.devfun.invoke.view.Ranged Used to restrict the range of a Number for user input. Using this will render a slider rather than a text view.
com.nextfaze.devfun.reference.ReferenceDefinition Defines references to annotations that are annotated DeveloperReference.
com.nextfaze.devfun.internal.ReflectedMethod  
com.nextfaze.devfun.internal.ReflectedProperty  
wiki.Setup and Initialization Compiler configuration and initialization process.
com.nextfaze.devfun.error.SimpleError Convenience class that implements ErrorDetails and automatically time stamps it.
com.nextfaze.devfun.function.SimpleFunctionItem Convenience class for FunctionItem to extend from, providing standard equals and hashCode implementations.
com.nextfaze.devfun.invoke.SimpleInvoke  
com.nextfaze.devfun.function.SingleFunctionTransformer The default transformer. Effectively just wraps the FunctionDefinition to a FunctionItem (1:1).
com.nextfaze.devfun.internal.string.Span  
android.text.SpannableStringBuilder (extensions in package com.nextfaze.devfun.internal.string)  
kotlin.String (extensions in package com.nextfaze.devfun.internal)  
com.nextfaze.devfun.internal.prop.ThreadLocalDelegate  
kotlin.Throwable (extensions in package com.nextfaze.devfun.internal.exception)  
com.nextfaze.devfun.inject.ThrowingInstanceProvider Same as InstanceProvider, but throws ClassInstanceNotFoundException instead of returning null.
wiki.Transformers TODO
com.nextfaze.devfun.reference.TypeReference A reference to a type generated by DeveloperReference.
com.nextfaze.devfun.invoke.UiButton Describes a dialog button for use with UiFunction to be rendered via the DevFun Invocation UI.
com.nextfaze.devfun.invoke.UiField Utility interface to easily generate an invoke UI/dialog. (experimental)
com.nextfaze.devfun.invoke.UiFunction Describes a function to be executed via the DevFun Invocation UI.
com.nextfaze.devfun.overlay.logger.UpdateCallback  
com.nextfaze.devfun.invoke.view.ValueSource Used in conjunction with From or Values to provide the Invoke UI with an initial value or set of values.
com.nextfaze.devfun.invoke.view.Values Annotate parameters with this specifying an Iterable class to initialize invoke views with a list of values.
android.view.View (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.view.ViewFactory Used by DevFun to inflate views when needed.
com.nextfaze.devfun.view.ViewFactoryProvider Provides ViewFactory instances for some class type/key.
android.view.ViewGroup (extensions in package com.nextfaze.devfun.internal.android)  
com.nextfaze.devfun.overlay.VisibilityListener  
com.nextfaze.devfun.overlay.VisibilityPredicate  
com.nextfaze.devfun.overlay.VisibilityScope Determines when an overlay can be visible.
com.nextfaze.devfun.internal.prop.WeakProperty  
com.nextfaze.devfun.internal.WindowCallbacks Handles wrapping and posting Window events throughout an app’s life.
com.nextfaze.devfun.invoke.WithInitialValue Parameter objects that implement this will use the value provided by WithInitialValue.value rather than checking for an @From annotation.
com.nextfaze.devfun.invoke.WithKParameter Parameter objects that implement this will have their values backed by a native function parameter description.
com.nextfaze.devfun.invoke.view.WithLabel View used with the Invoke UI will automatically be wrapped and be given a label unless they provide their own with this interface.
com.nextfaze.devfun.invoke.view.types.WithMask This is an experimental feature. TODO? Could inline classes be a cleaner way of doing this given most of Android’s flags are Int/Long values?
com.nextfaze.devfun.invoke.WithNullability Parameter objects that implement this will can be nullable.
com.nextfaze.devfun.reference.WithProperties Declares a definition that has properties associated with it. The type will be AnnotationNameProperties.
com.nextfaze.devfun.internal.WithSubGroup When implemented by a FunctionItem the DevMenu will render a sub-group for it. Not explicitly intended for public use - primarilyhere as a “fix/workaround” for #19 (where Context overrides the user defined group)
com.nextfaze.devfun.invoke.view.WithValue Views used with the Invoke UI should implement this to ensure the correct value is obtainable upon invocation.