hydra.variants module

Variant types which describe the structure of Hydra core types and terms.

class hydra.variants.LiteralVariant(*values)

Bases: Enum

The identifier of a literal constructor.

BINARY = Name(value='binary')
BOOLEAN = Name(value='boolean')
DECIMAL = Name(value='decimal')
FLOAT = Name(value='float')
INTEGER = Name(value='integer')
STRING = Name(value='string')
TYPE_ = Name(value='hydra.variants.LiteralVariant')
class hydra.variants.TermVariant(*values)

Bases: Enum

The identifier of a term expression constructor.

ANNOTATED = Name(value='annotated')
APPLICATION = Name(value='application')
CASES = Name(value='cases')
EITHER = Name(value='either')
INJECT = Name(value='inject')
LAMBDA = Name(value='lambda')
LET = Name(value='let')
LIST = Name(value='list')
LITERAL = Name(value='literal')
MAP = Name(value='map')
OPTIONAL = Name(value='optional')
PAIR = Name(value='pair')
PROJECT = Name(value='project')
RECORD = Name(value='record')
SET = Name(value='set')
TYPE_ = Name(value='hydra.variants.TermVariant')
TYPE_APPLICATION = Name(value='typeApplication')
TYPE_LAMBDA = Name(value='typeLambda')
UNIT = Name(value='unit')
UNWRAP = Name(value='unwrap')
VARIABLE = Name(value='variable')
WRAP = Name(value='wrap')
class hydra.variants.TypeVariant(*values)

Bases: Enum

The identifier of a type constructor.

ANNOTATED = Name(value='annotated')
APPLICATION = Name(value='application')
EFFECT = Name(value='effect')
EITHER = Name(value='either')
FORALL = Name(value='forall')
FUNCTION = Name(value='function')
LIST = Name(value='list')
LITERAL = Name(value='literal')
MAP = Name(value='map')
OPTIONAL = Name(value='optional')
PAIR = Name(value='pair')
RECORD = Name(value='record')
SET = Name(value='set')
TYPE_ = Name(value='hydra.variants.TypeVariant')
UNION = Name(value='union')
UNIT = Name(value='unit')
VARIABLE = Name(value='variable')
VOID = Name(value='void')
WRAP = Name(value='wrap')