liquid-0.1.0.2: Liquid template language library

Safe HaskellNone
LanguageHaskell2010

Text.Liquid.VariableFinder

Synopsis

Documentation

data VType Source #

Allowed types

Instances

Eq VType Source # 

Methods

(==) :: VType -> VType -> Bool #

(/=) :: VType -> VType -> Bool #

Show VType Source # 

Methods

showsPrec :: Int -> VType -> ShowS #

show :: VType -> String #

showList :: [VType] -> ShowS #

findAllVariables :: [Expr] -> [(JsonVarPath, VType)] Source #

Map findAllVariables across terms from parsed template and concatenate variable with inferred type

findVariables :: StateT VType [] JsonVarPath -> Expr -> StateT VType [] JsonVarPath Source #

Find all the variables in a node's children, with a type scope

makeAggregate Source #

Arguments

:: Expr

Aggregate sample filter to add

-> VarIndex

Prefix to filter on - do not aggregate this prefix

-> [Expr]

Parsed template to make aggregate style

-> [Expr] 

Find all context variables and add a sample filter. Designed to simulate required templates for aggregate contexts - see JsonTools

aggregateElem Source #

Arguments

:: Expr

Aggregate sample filter to add

-> VarIndex

Prefix to filter on - do not aggregate this prefix

-> Expr

Expression under modification

-> Expr 

updateFs Source #

Arguments

:: Expr

Aggregate sample filter to prepend

-> [Expr]

List of filter cells

-> [Expr]