Package-level declarations

Types

Link copied to clipboard
open class ComposeInvestigatorBaseLower(context: IrPluginContext, messageCollector: MessageCollector, tables: IrInvalidationTraceTableHolder) : IrElementTransformerVoidWithContext

This is the parent transformer for all transformations/visits made by ComposeInvestigator.

class InvalidationProcessTracingFirstTransformer(context: IrPluginContext, messageCollector: MessageCollector, tables: IrInvalidationTraceTableHolder, stabilityInferencer: StabilityInferencer) : ComposeInvestigatorBaseLower

Generate code to find and report value arguments whose values have changed whenever a Composable function becomes (re)composed.

Link copied to clipboard
class InvalidationSkipTracingLastTransformer(context: IrPluginContext, messageCollector: MessageCollector, table: IrInvalidationTraceTableHolder) : ComposeInvestigatorBaseLower

Generates code that reports whenever a Composable function is skipped during recomposition due to smart recomposition.

class InvalidationTraceTableInstanceTransformer(context: IrPluginContext, messageCollector: MessageCollector) : IrElementTransformerVoid, IrInvalidationTraceTableHolder

Generates code to instantiate ComposableInvalidationTraceTable as the top-level variable of the current file, if the file is not annotated with @file:NoInvestigation.

class InvalidationTraceTableIntrinsicTransformer(context: IrPluginContext, irComposableInformation: IrComposableInformation, tables: IrInvalidationTraceTableHolder) : IrElementTransformerVoidWithContext

Transforms the code to implement the use of the ComposableInvalidationTraceTable's Intrinsic API by utilizing metadata generated at compile time by ComposeInvestigator.

Link copied to clipboard
class StateInitializerFirstTransformer(context: IrPluginContext, messageCollector: MessageCollector, tables: IrInvalidationTraceTableHolder) : ComposeInvestigatorBaseLower

Transforms the code to add the use of ComposableInvalidationTraceTable#registerStateObject in the definition of State or StateObject.