souffle  2.0.2-371-g6315b36
ProvenanceIndex.cpp
Go to the documentation of this file.
1 /*
2  * Souffle - A Datalog Compiler
3  * Copyright (c) 2019, The Souffle Developers. All rights reserved.
4  * Licensed under the Universal Permissive License v 1.0 as shown at:
5  * - https://opensource.org/licenses/UPL
6  * - <souffle root>/licenses/SOUFFLE-UPL.txt
7  */
8 
9 /************************************************************************
10  *
11  * @file ProvenanceIndex.cpp
12  *
13  * Interpreter index with generic interface.
14  *
15  ***********************************************************************/
16 
17 #include "interpreter/Relation.h"
18 
19 namespace souffle::interpreter {
20 
21 #define CREATE_PROVENANCE_REL(Structure, Arity, ...) \
22  case (Arity): { \
23  return mk<Relation<Arity, interpreter::Provenance>>(id.getAuxiliaryArity(), id.getName(), orderSet); \
24  }
25 
26 Own<RelationWrapper> createProvenanceRelation(
27  const ram::Relation& id, const ram::analysis::MinIndexSelection& orderSet) {
28  switch (id.getArity()) {
30 
31  default: fatal("Requested arity not yet supported. Feel free to add it.");
32  }
33 }
34 
35 } // namespace souffle::interpreter
CREATE_PROVENANCE_REL
#define CREATE_PROVENANCE_REL(Structure, Arity,...)
Definition: ProvenanceIndex.cpp:27
Relation.h
souffle::interpreter::createProvenanceRelation
Own< RelationWrapper > createProvenanceRelation(const ram::Relation &id, const ram::analysis::MinIndexSelection &orderSet)
Definition: ProvenanceIndex.cpp:32
souffle::interpreter
Definition: BrieIndex.cpp:22
FOR_EACH_PROVENANCE
#define FOR_EACH_PROVENANCE(func,...)
Definition: Util.h:34
souffle::fatal
void fatal(const char *format, const Args &... args)
Definition: MiscUtil.h:198