Module

Hylograph.Expr.Interpreter.Meta

Package
purescript-hylograph-selection
Repository
afcondon/purescript-hylograph-selection

Meta Interpreter - Extracts source metadata from expressions

This interpreter produces AttrSource metadata describing where attribute values come from, without evaluating them.

Used alongside EvalD to capture both the evaluation function and source metadata for attributes.

#MetaD Source

newtype MetaD :: forall k. Row Type -> k -> Typenewtype MetaD (datum :: Row Type) a

Meta interpreter that extracts source metadata

Interprets expressions to produce AttrSource describing the structure of the expression.

Constructors

Instances

#runMetaD Source

runMetaD :: forall datum a. MetaD datum a -> AttrSource

#EvalWithMeta Source

newtype EvalWithMeta datum a

Combined interpreter that produces both evaluation function and metadata

This allows extracting source metadata while also getting the evaluation function. The datum parameter is a concrete Type (like Record row), not a Row Type.

Constructors

Instances

#runEvalWithMeta Source

runEvalWithMeta :: forall datum a. EvalWithMeta datum a -> { eval :: datum -> Int -> a, meta :: AttrSource }

#evalWithMeta Source

evalWithMeta :: forall datumRow a. EvalD (Record datumRow) a -> MetaD datumRow a -> EvalWithMeta (Record datumRow) a

Create EvalWithMeta from a polymorphic expression

This runs both interpreters on the same expression. Note: the EvalD takes a concrete datum type, MetaD takes a Row Type

Modules
Data.DependencyGraph
Hylograph.AST
Hylograph.Axis.Axis
Hylograph.Brush
Hylograph.Brush.FFI
Hylograph.Brush.Types
Hylograph.Classify
Hylograph.Data.Graph
Hylograph.Data.Graph.Algorithms
Hylograph.Data.Node
Hylograph.Data.Tree
Hylograph.Expr.Animation
Hylograph.Expr.Attr
Hylograph.Expr.Datum
Hylograph.Expr.Expr
Hylograph.Expr.Friendly
Hylograph.Expr.Integration
Hylograph.Expr.Interpreter.CodeGen
Hylograph.Expr.Interpreter.Eval
Hylograph.Expr.Interpreter.Meta
Hylograph.Expr.Interpreter.PureSVG
Hylograph.Expr.Interpreter.SVG
Hylograph.Expr.Path
Hylograph.Expr.Path.Generators
Hylograph.Expr.Sugar
Hylograph.Expr.Units
Hylograph.HATS
Hylograph.HATS.Friendly
Hylograph.HATS.InterpreterTick
Hylograph.HATS.Transitions
Hylograph.Interaction.Brush
Hylograph.Interaction.Coordinated
Hylograph.Interaction.Pointer
Hylograph.Interaction.Zoom
Hylograph.Internal.Attribute
Hylograph.Internal.Behavior.FFI
Hylograph.Internal.Behavior.Types
Hylograph.Internal.Capabilities.Selection
Hylograph.Internal.Capabilities.Transition
Hylograph.Internal.FFI
Hylograph.Internal.Selection.Join
Hylograph.Internal.Selection.Operations
Hylograph.Internal.Selection.Operations.Conversions
Hylograph.Internal.Selection.Operations.Helpers
Hylograph.Internal.Selection.Operations.Selection
Hylograph.Internal.Selection.Query
Hylograph.Internal.Selection.Types
Hylograph.Internal.Transition.FFI
Hylograph.Internal.Transition.Manager
Hylograph.Internal.Transition.Scene
Hylograph.Internal.Transition.Types
Hylograph.Internal.Types
Hylograph.Interpreter.D3
Hylograph.Interpreter.English
Hylograph.Interpreter.Mermaid
Hylograph.Interpreter.MetaAST
Hylograph.Interpreter.SemiQuine
Hylograph.Interpreter.SemiQuine.TreeToCode
Hylograph.Interpreter.SemiQuine.Types
Hylograph.Render
Hylograph.Scale
Hylograph.Scale.FP
Hylograph.Shape.Arc
Hylograph.Shape.Pie
Hylograph.Shape.Polygon
Hylograph.Tooltip
Hylograph.Transform
Hylograph.TreeDSL
Hylograph.TreeDSL.ShapeTree
Hylograph.Unified
Hylograph.Unified.Attribute
Hylograph.Unified.DataDSL
Hylograph.Unified.Display
Hylograph.Unified.Examples
Hylograph.Unified.Join
Hylograph.Unified.Sugar