souffle
2.0.2-371-g6315b36
|
const Location & getDefinitionPoint(const ast::Variable &var) const
void addVarReference(const ast::Variable &var, const Location &l)
generator_location_map arg_generator_locations
The level of a nested ram operation that is handling a generator operation.
void setGeneratorLoc(const ast::Argument &arg, const Location &loc)
A variable to be utilized within constraints to be handled by the constraint solver.
An abstract class for arguments.
std::map< std::string, std::set< Location > > variable_reference_map
The type mapping variables (referenced by their names) to the locations where they are used.
void setRecordDefinition(const ast::RecordInit &init, const Location &l)
bool isDefined(const ast::Variable &var) const
const Location & getGeneratorLoc(const ast::Argument &arg) const
const variable_reference_map & getVariableReferences() const
std::map< const ast::RecordInit *, Location > record_definition_map
The type mapping record init expressions to their definition points, hence the point where they get g...
bool isSomethingDefinedOn(int level) const
std::vector< std::pair< const ast::Argument *, Location > > generator_location_map
A map from generative ast::Arguments to storage locations.
bool isGenerator(const int level) const
void rel(size_t limit, bool showLimit=true)
record_definition_map record_definitions
The index of record definition points.
Defines a record initialization class.
variable_reference_map var_references
The index of variable accesses.
void print(std::ostream &out) const