Fixpoint3.TypeInfo
This module defines and offers an interface for dealing with the types of the Datalog engine.
A Type is uniquely defined by its UnifiedTypePos which is computed by typeDatalog.
This module has a tight coupling with Compiler since we must assign functional predicates
their identifiers in same order. It also has a tight coupling with Lowering, which assumes
that a Type is the same as a UnifiedTypePoss.
Type Aliases
As far as we are concerned a Type is simply a description of where
its boxing/unboxing information is saved.
Definitions
def expandTypeInfoToProv(typeInfo: TypeInformation, predicates: Predicates): TypeInformation§ SourceExpands typeInfo to include the provenance annotations types.
Expands relType to include the provenance annotations types.
Returns the type of the index'th value of the relation with predicate PredSym(_, id).
Returns the type of the relation with predicate PredSym(_, id).
def typeDatalog(d: Datalog, pseudoStratums: PseudoStrataOrder[r], predicates: Predicates, withProv: Bool): TypeInformation \ r§ SourceReturns the type information of d
For functional predicates the vector returned vector contains the types of the functional predicates in the same order they are met by the compiler.