souffle  2.0.2-371-g6315b36
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345678]
 Csouffle::ram::AbstractAggregateAbstract class for aggregation
 Csouffle::ram::AbstractChoiceAbstract class for a choice operation
 Csouffle::ram::AbstractLogAbstract class for logging
 Csouffle::ram::AbstractParallelAbstract class for parallel operation
 Csouffle::interpreter::AbstractParallelNode that utilizes parallel execution should inherit from this class. Enable node with its own view context for parallel execution
 Csouffle::ast::analysis::all_type_factoryA factory for computing sets of types covering all potential types
 Csouffle::ram::analysis::AnalysisAbstract class for a RAM Analysis
 Csouffle::ast::analysis::AnalysisAbstract class for a AST Analysis
 Csouffle::ast::analysis::Assignment< Var >An assignment maps a list of variables to values of their respective property space
 Csouffle::ast::analysis::Assignment< AnalysisVar >
 Csouffle::ast::analysis::Assignment< TypeVar >
 Csouffle::ast::ast_visitor_tagA tag type required for the is_ast_visitor type trait to identify AstVisitors
 Csouffle::ast2ram::AstToRamTranslatorMain class for the AST->RAM translator
 Csouffle::profile::Atom
 Csouffle::detail::btree< Key, Comparator, Allocator, blockSize, SearchStrategy, isSet, WeakComparator, Updater >::baseThe base type of all node types containing essential book-keeping information
 Csouffle::BaseTable< K, V >
 Csouffle::BaseTable< std::string, std::string >
 Csouffle::ast::BindingStore
 Csouffle::interpreter::BinRelOperationOperation that involves with two relations should inherit from this class. E.g. Swap, Extend
 Csouffle::Table< T, blockSize >::Block
 Csouffle::ast::analysis::AlgebraicDataType::Branch
 Csouffle::detail::btree< Key, Comparator, Allocator, blockSize, SearchStrategy, isSet, WeakComparator, Updater >The actual implementation of a b-tree data structure
 Csouffle::detail::btree< Key, Comparator, Allocator, blockSize, SearchStrategy, isSet, Comparator, detail::updater< Key > >
 Csouffle::detail::btree< Key, detail::comparator< Key >, std::allocator< Key >, 256, typename souffle::detail::default_strategy< Key >::type, false, detail::comparator< Key >, souffle::detail::updater< Key > >
 Csouffle::detail::btree< Key, detail::comparator< Key >, std::allocator< Key >, 256, typename souffle::detail::default_strategy< Key >::type, true, detail::comparator< Key >, souffle::detail::updater< Key > >
 Csouffle::detail::btree< Key, detail::comparator< Key >, std::allocator< Key >, blockSize, typename detail::default_strategy< Key >::type, isSet, detail::comparator< Key >, detail::updater< Key > >
 Csouffle::detail::btree< PairStore, EqrelMapComparator< PairStore >, std::allocator< PairStore >, blockSize, typename detail::default_strategy< PairStore >::type, isSet, EqrelMapComparator< PairStore >, detail::updater< PairStore > >
 Csouffle::detail::btree< StorePair, souffle::EqrelMapComparator< StorePair >, std::allocator< StorePair >, blockSize, typename detail::default_strategy< StorePair >::type, isSet, souffle::EqrelMapComparator< StorePair >, detail::updater< StorePair > >
 Csouffle::detail::btree< Key, Comparator, Allocator, blockSize, SearchStrategy, isSet, WeakComparator, Updater >::btree_operation_hints< size >A collection of operation hints speeding up some of the involved operations by exploiting temporal locality
 Csouffle::CacheAccessCounterCache hits/misses
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >::CellThe value stored in a single cell of a inner or leaf node
 Csouffle::profile::CellInterface
 Csouffle::ast2ram::ClauseTranslator
 Csouffle::profile::Cli
 Csouffle::CmdOptionsA utility class for parsing command line arguments within generated query programs
 Csouffle::comp_deref< T >A functor class supporting the values pointers are pointing to
 Csouffle::interpreter::index_utils::comparator< Columns >
 Csouffle::detail::comparator< T >A generic comparator implementation as it is used by a b-tree based on types that can be less-than and equality comparable
 Csouffle::interpreter::index_utils::comparator< First, Rest... >
 Csouffle::detail::comparator< Key >
 Csouffle::interpreter::index_utils::comparator<>
 Csouffle::interpreter::ConditionalOperationEncode a conditional operation for the interpreter node. E.g. Exit, Filter
 Csouffle::ConstConstraintConstant constraints for values in query command
 Csouffle::ast::analysis::Constraint< Var >A generic base class for constraints on variables
 Csouffle::t_nullaries::context
 Csouffle::t_info< Arity_ >::context
 Csouffle::interpreter::ContextEvaluation context for Interpreter operations
 Ctinyformat::detail::convertToInt< T, convertible >
 Ctinyformat::detail::convertToInt< T, true >
 Csouffle::evaluator::lxor_infix::curry< A >
 Csouffle::profile::DataComparator
 Csouffle::DebugReportClass representing a HTML report, consisting of a list of sections
 Csouffle::DebugReportSectionClass representing a section of a HTML report
 Csouffle::ast::analysis::detail::default_bottom_factory< T >
 Csouffle::detail::brie::default_factory< T >A templated functor to obtain default values for unspecified elements of sparse array instances
 Csouffle::ast::analysis::detail::default_meet_op< T, meet_assign_op >
 Csouffle::detail::brie::default_merge< T >A operation to be utilized by the sparse map when merging elements associated to different values
 CDefinesExecutionPlan
 Csouffle::deref< T >A functor dereferencing a given type
 Csouffle::deref_less< T, C >A functor comparing the dereferenced value of a pointer type utilizing a given comparator
 Csouffle::Diagnostic
 Csouffle::DiagnosticMessage
 Csouffle::DisjointSetStructure that emulates a Disjoint Set, i.e
 Csouffle::interpreter::EngineThis class translate the RAM Program into executable format and interpreter it
 Csouffle::EqrelMapComparator< StorePair >
 Csouffle::EqrelMapComparator< PairStore >
 Csouffle::EquivalenceEquivalence class for variables in query command
 Csouffle::EquivalenceRelation< TupleType >
 Csouffle::EquivalenceRelation< Arity >
 Csouffle::ErrorReport
 Csouffle::profile::EventProcessorAbstract Class for EventProcessor
 Csouffle::profile::EventProcessorSingletonEvent Processor Singleton
 Csouffle::Explain
 Csouffle::ExplainConfig
 Csouffle::ExplainProvenance
 Csouffle::interpreter::index_utils::extend< Index, column >
 Csouffle::interpreter::index_utils::extend< index< Columns... >, Col >
 Ctinyformat::detail::is_convertible< T1, T2 >::fail
 Cfalse_type
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >::FirstInfoSnapshotA struct summarizing the state of the first node reference
 Csouffle::detail::brie::fix_binding< Len, Pos, Dim >A functor initializing an iterator upon creation to reference the first element exhibiting a given prefix within a given Trie
 Csouffle::detail::brie::fix_binding< 0, Dim, Dim >
 Csouffle::detail::brie::fix_binding< 0, Pos, Dim >
 Csouffle::detail::brie::fix_first< Pos, Dim >A functor initializing an iterator upon creation to reference the first element in the associated Trie
 Csouffle::detail::brie::fix_first< Dim, Dim >
 Csouffle::detail::brie::fix_first_nested< Dim >
 Csouffle::detail::brie::fix_lower_bound< Dim >A functor initializing an iterator upon creation to reference the first element within a given Trie being not less than a given value
 Csouffle::detail::brie::fix_upper_bound< Dim >A functor initializing an iterator upon creation to reference the first element within a given Trie being greater than a given value
 Ctinyformat::detail::FormatArg
 Ctinyformat::FormatListList of template arguments format(), held in a type-opaque way
 Ctinyformat::detail::formatValueAsType< T, fmtT, convertible >
 Ctinyformat::detail::formatValueAsType< T, fmtT, true >
 Cforward_non_output_iterator_traits
 Csouffle::detail::brie::forward_non_output_iterator_traits< A >
 Cfstream
 Csouffle::interpreter::index_utils::get_full_index< arity >
 Csouffle::interpreter::index_utils::get_full_index< 0 >
 Csouffle::detail::brie::get_nested_iter_core< Level >A functor extracting a reference to a nested iterator core from an enclosing iterator core
 Csouffle::detail::brie::get_nested_iter_core< 0 >
 Csouffle::Global
 Csouffle::Graph< Vertex, Compare >A simple graph structure for graph-based operations
 Csouffle::Graph< const souffle::ast::Relation *, souffle::ast::NameComparison >
 Cstd::hash< tuple< A, B > >
 Csouffle::ram::analysis::SearchSignature::Hasher
 Csouffle::detail::brie::TrieBase< Dim, Derived >::hint_statistics
 Csouffle::detail::btree< Key, Comparator, Allocator, blockSize, SearchStrategy, isSet, WeakComparator, Updater >::hint_statistics
 CHoistAggregatesTransformerPushes one Aggregate as far up the loop nest as possible
 Csouffle::profile::HtmlGenerator
 Csouffle::id< T >A functor representing the identity function for a generic type T
 Csouffle::detail::brie::identity< T >A functor representing the identity function
 Csouffle::interpreter::index< Columns >The index class is utilized as a template-meta-programming structure to specify and realize indices
 Csouffle::interpreter::Index< _Arity, Structure >An index is an abstraction of a data structure
 Csouffle::interpreter::Index< 0, Structure >A partial specialize template for nullary indexes
 Csouffle::interpreter::Index< 2, Eqrel >
 Csouffle::profile::InputReader
 Csouffle::IntrinsicFunctorInfo
 Cios
 Csouffle::IOSystem
 Csouffle::ast::detail::is_ast_visitor< T >A type trait determining whether a given type is a visitor or not
 CTCB_SPAN_NAMESPACE_NAME::detail::is_container< C, U >
 Cis_convertible
 Ctinyformat::detail::is_convertible< T1, T2 >
 Cis_pointer
 Csouffle::ram::detail::is_ram_visitor< T >A type trait determining whether a given type is a visitor or not
 Ctinyformat::detail::is_wchar< T >
 Ctinyformat::detail::is_wchar< const wchar_t * >
 Ctinyformat::detail::is_wchar< const wchar_t[n]>
 Ctinyformat::detail::is_wchar< wchar_t * >
 Ctinyformat::detail::is_wchar< wchar_t[n]>
 Cistream
 Csouffle::profile::Iteration
 Csouffle::EquivalenceRelation< TupleType >::iterator
 Csouffle::interpreter::RelationWrapper::IteratorThe iterator interface
 Csouffle::Relation::iteratorWrapper class for abstract iterator
 Citerator
 Csouffle::t_nullaries::iterator
 Csouffle::detail::btree< Key, Comparator, Allocator, blockSize, SearchStrategy, isSet, WeakComparator, Updater >::iteratorThe iterator type to be utilized for scanning through btree instances
 Csouffle::interpreter::RelationWrapper::iterator_baseA virtualized iterator class that can be used by the Proginterface
 Csouffle::Relation::iterator_baseAbstract iterator class
 Citerator_base
 Csouffle::detail::brie::TrieTypes< Dim >::iterator_core
 Csouffle::detail::brie::TrieTypes< 1u >::iterator_coreThe iterator core of this level contributing to the construction of a composed trie iterator
 Csouffle::detail::joined_sequence< Iter, Printer >A auxiliary class to be returned by the join function aggregating the information required to print a list of elements as well as the implementation of the printing itself
 Cjson11::Json
 Cjson11::JsonValue
 Csouffle::detail::lambda_traits_helper< T >
 Csouffle::detail::lambda_traits_helper< decltype(&Lambda::operator())>
 Csouffle::detail::lambda_traits_helper< R()>
 Csouffle::detail::lambda_traits_helper< R(A0)>
 Csouffle::detail::lambda_traits_helper< R(A0, A1)>
 Csouffle::detail::lambda_traits_helper< R(Args...)>
 Csouffle::Lock::Lease
 Csouffle::OptimisticReadWriteLock::Lease
 Csouffle::RuleBody::literal
 Csouffle::ast2ram::Location
 Csouffle::LockA small utility class for implementing simple locks
 Csouffle::LoggerThe class utilized to times for the souffle profiling tool
 Csouffle::LogStatement
 Csouffle::LRUCache< T, size >An Least-Recently-Used cache for arbitrary element types
 Csouffle::LRUCache< node *, 1 >
 Csouffle::LRUCache< T, 0 >
 Csouffle::LRUCache< T, 1 >
 Csouffle::evaluator::lxor_infix
 Csouffle::MainOption
 Csouffle::ram::analysis::MaxMatching
 Csouffle::SparseBitMap< BITS >::merge_op
 Csouffle::ram::analysis::MinIndexSelection
 Csouffle::detail::multiplying_printer< T >A utility class required for the implementation of the times function
 Csouffle::ast::NameComparisonComparator for relations
 Csouffle::detail::brie::TrieTypes< Dim >::nested_trie_cloner
 Csouffle::detail::brie::TrieTypes< Dim >::nested_trie_merger
 Csouffle::interpreter::NestedOperationEncode a nested operation for the interpreter node. E.g. Loop, IndexScan
 Csouffle::ram::NodeNode is a superclass for all RAM IR classes
 Csouffle::ast::NodeAbstract class for syntactic elements in an input program
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >::NodeThe node type of the internally maintained tree
 Csouffle::interpreter::NodeThis is a shadow node for a ram::Node that is enriched for with local information so that the interpreter is executing quickly
 Csouffle::ast::NodeMapperAn abstract class for manipulating AST Nodes by substitution
 Csouffle::ram::NodeMapperAn abstract class for manipulating RAM Nodes by substitution
 Csouffle::ast::analysis::NormalisedClause
 Csouffle::ast::analysis::NormalisedClause::NormalisedClauseElement
 Csouffle::ast::transform::NullableVector< T >
 Cjson11::NullStruct
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >::op_contextA struct to be utilized as a local, temporal context by client code to speed up the execution of various operations (optional parameter)
 Csouffle::detail::brie::TrieTypes< Dim >::op_context
 Csouffle::EquivalenceRelation< TupleType >::operation_hintsA collection of operation hints speeding up some of the involved operations by exploiting temporal locality
 Csouffle::OptimisticReadWriteLockA 'sequential' non-locking implementation for an optimistic r/w lock
 Csouffle::interpreter::OrderAn order to be enforced for storing tuples within indexes
 Csouffle::interpreter::NodeGenerator::OrderingContextThis class help generator reordering tuple access based on the index oder
 Costream
 Csouffle::profile::OutputProcessor
 Csouffle::ParserDriver
 Csouffle::PiggyList< T >
 Csouffle::PiggyList< std::atomic< block_t > >
 Csouffle::SrcLocation::PointA class locating a single point in an input file
 Csouffle::detail::print< Extractor >A generic element printer
 Csouffle::detail::print< deref< T > >
 Csouffle::ast::analysis::Problem< Var >A problem is a list of constraints for which a solution is desired
 Csouffle::ast::analysis::Problem< AnalysisVar >
 Csouffle::ast::analysis::Problem< TypeVar >
 Csouffle::ProfileEventSingletonProfile Event Singleton
 Csouffle::ProfileEventSingleton::ProfileTimerProfile Timer
 Csouffle::ProgramFactoryAbstract program factory class
 Csouffle::profile::ProgramRun
 Csouffle::ast::analysis::property_space< T, meet_assign_op, bottom_factory, meet_op >A MPL type for defining a property space
 Csouffle::ast::analysis::property_space< std::set< T >, detail::set_meet_assign_op< T > >
 Csouffle::ast::analysis::property_space< TypeSet, sub_type, all_type_factory >
 Csouffle::interpreter::ProvenanceUpdater< Arity >
 Csouffle::ast::QualifiedNameQualified Name class defines fully/partially qualified names to identify objects in components
 Csouffle::ram::ram_visitor_tagA tag type required for the is_ram_visitor type trait to identify RamVisitors
 CRamIndexAnalyis
 Csouffle::RandomInsertPiggyList< T >A PiggyList that allows insertAt functionality
 Csouffle::RandomInsertPiggyList< SparseDomain >
 Csouffle::RandomInsertPiggyList< value_type >
 Csouffle::range< Iter >A utility class enabling representation of ranges by pairing two iterator instances marking lower and upper boundaries
 Csouffle::range< souffle::detail::brie::TrieIterator >
 Csouffle::profile::Reader
 Csouffle::ReadStreamFactory
 Csouffle::ReadWriteLock
 Csouffle::RecordMap::RecordHashHash function for unordered record map
 Csouffle::RecordMapBidirectional mappping between records and record references
 Csouffle::RecordTable
 Csouffle::profile::Relation
 Csouffle::RelationObject-oriented wrapper class for Souffle's templatized relations
 Csouffle::synthesiser::Relation
 Csouffle::ast::analysis::RelationScheduleAnalysisStepA single step in a relation schedule, consisting of the relations computed in the step and the relations that are no longer required at that step
 Csouffle::interpreter::RelationWrapperWrapper for InterpreterRelation
 CReorderBreakReorder filter-break nesting to a break-filter nesting
 CReportIndexSetsTransformerDoes not transform the program but reports on the index sets if the debug-report flag is enabled
 Csouffle::test::reserver< C >
 Csouffle::test::reserver< std::unordered_set< A, B, C, D > >
 Csouffle::reverse< A >Use to range-for iterate in reverse
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >::RootInfoA struct describing all the information required by the container class to manage the wrapped up tree
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >::RootInfoSnapshotA struct to cover a snapshot of the root node state
 Csouffle::profile::Row
 Csouffle::profile::Rule
 Csouffle::RuleBody
 Csouffle::scanner_data
 Csouffle::ScreenBuffer
 Csouffle::detail::search_strategyA common base class for search strategies in b-trees
 Csouffle::ram::analysis::MinIndexSelection::SearchComparator
 Csouffle::ram::analysis::SearchSignatureSearch signature of a RAM operation; each bit represents an attribute of a relation
 Csouffle::ast::transform::SemanticCheckerImpl
 Csouffle::SerialisationStream< readOnlyTables >
 Csouffle::SerialisationStream< false >
 Csouffle::SerialisationStream< true >
 Csouffle::ast::analysis::detail::set_meet_assign_op< T >A meet operator for set-based property spaces based on the sub-set lattices
 Csouffle::SignalHandlerClass SignalHandler captures signals and reports the context where the signal occurs
 Csouffle::ast::SipsMetricClass for SIPS cost-metric functions Each subclass represents a different heuristic used for evaluating the cost of choosing an atom next in the schedule
 Csouffle::SouffleProgramAbstract base class for generated Datalog programs
 CTCB_SPAN_NAMESPACE_NAME::span< ElementType, Extent >
 CTCB_SPAN_NAMESPACE_NAME::detail::span_storage< E, S >
 CTCB_SPAN_NAMESPACE_NAME::detail::span_storage< E, dynamic_extent >
 CTCB_SPAN_NAMESPACE_NAME::detail::span_storage< ElementType, Extent >
 Csouffle::SparseArray< T, BITS, merge_op, copy_op >A sparse array simulates an array associating to every element of uint32_t an element of a generic type T
 Csouffle::SparseArray< value_t, 4, merge_op >
 Csouffle::detail::brie::SparseArrayIter< SparseArray >Iterator type for souffle::SparseArray
 Csouffle::SparseBitMap< BITS >A sparse bit-map is a bit map virtually assigning a bit value to every value if the uint32_t domain
 Csouffle::detail::brie::SparseBitMapIter< SparseBitMap >Iterator type for souffle::SparseArray
 Csouffle::SparseDisjointSet< SparseDomain >
 Csouffle::SparseDisjointSet< value_type >
 Csouffle::SpinLockA 'sequential' non-locking implementation for a spin lock
 Csouffle::SrcLocationA class describing a range in an input file
 Cjson11::Statics
 Csouffle::detail::strategy_selection< S >A template-meta class to select search strategies for b-trees depending on the key type
 Csouffle::detail::strategy_selection< binary_search >
 Csouffle::detail::strategy_selection< linear_search >
 Cstreambuf
 Csouffle::ast::analysis::sub_typeAn implementation of a meet operation between sets of types computing the set of pair-wise greatest common subtypes
 Ctinyformat::detail::is_convertible< T1, T2 >::succeed
 Csouffle::interpreter::SuperInstructionThis class encodes information for a super-instruction, which is used to eliminate Number and TupleElement in index/project/existence operation
 Csouffle::interpreter::SuperOperationNode that utilizes the super instruction optimization should inherit from this class. E.g. ExistenceCheck, Project
 CSWIGSouffleProgramAbstract base class for generated Datalog programs
 Csouffle::SymbolTable
 Csouffle::synthesiser::SynthesiserA RAM synthesiser: synthesises a C++ program from a RAM program
 Csouffle::t_info< Arity_ >Info relations
 Csouffle::t_nullariesNullary relations
 Csouffle::Table< T, blockSize >
 Csouffle::profile::Table
 CTestCase::test_resultChecks condition
 CTestCase
 Csouffle::ram::transform::Transformer@Class Transformer @Brief abstract transformer class for a translation unit
 Csouffle::ast::transform::Transformer
 Csouffle::ast::TranslationUnitTranslation unit class for the translation pipeline
 Csouffle::ram::TranslationUnitTranslating a RAM program
 Csouffle::TreeNode
 Csouffle::Trie< Dim >
 Csouffle::detail::brie::TrieBase< Dim, Derived >A base class for the Trie implementation allowing various specializations of the Trie template to inherit common functionality
 Csouffle::detail::brie::TrieBase< 1u, Trie< 1u > >
 Csouffle::detail::brie::TrieIterator< Value, IterCore >An iterator over the stored entries
 Csouffle::detail::brie::TrieTypes< Dim >
 Csouffle::detail::brie::TrieTypes< 1u >
 Ctrue_type
 Csouffle::profile::Tui
 Csouffle::tupleDefines a tuple for the OO interface such that relations with varying columns can be accessed
 Csouffle::SouffleProgram::tuple_insert< Tuple, N >Helper function for the wrapper function Relation::insert() and Relation::contains()
 Csouffle::SouffleProgram::tuple_insert< Tuple, 1 >Helper function for the wrapper function Relation::insert() and Relation::contains() for the first element of the tuple
 Csouffle::ast::analysis::TypeAn abstract base class for types to be covered within a type environment
 CTypeAttributeType attribute class
 Csouffle::ast::analysis::TypeBindingClass that encapsulates std::map of types binding that comes from .init c = Comp<MyType> Type binding in this example would be T->MyType if the component code is .comp Comp<T> ..
 Csouffle::ast::transform::TypeDeclarationChecker
 Csouffle::ast::analysis::TypeEnvironmentA type environment is a set of types
 Csouffle::ast::analysis::TypeSetA collection to represent sets of types
 Csouffle::ast::analysis::TypeVisitor< R >A visitor for Types
 Csouffle::detail::updater< T >The default non-updater
 Csouffle::detail::updater< Key >
 Csouffle::detail::updater< PairStore >
 Csouffle::detail::updater< StorePair >
 Csouffle::profile::Tui::Usage
 Csouffle::ast2ram::ValueIndex
 Csouffle::ast::analysis::Variable< Id, PropertySpace >A variable to be utilized within constraints to be handled by the constraint solver
 Csouffle::ast::analysis::Variable< const Argument *, PropertySpace >
 Csouffle::interpreter::ViewContextThis class contains information for views (Hints) creation for ram::Query and ram::Parallel operation
 Csouffle::interpreter::ViewOperationOperation that utilizes the index view from underlying relation should inherit from this class
 Csouffle::interpreter::ViewWrapperA dummy wrapper for indexViews
 Csouffle::WriteStreamFactory
 Carray
 Carray< std::atomic< value_type * >, maxContainers >
 CComparator
 Cconst bool
 Cconst long long
 CEqrelMapComparator< StorePair >
 Cmap< TypeVar, value_type >
 Cobject
 Ctype
 Ctype
 CVecOwn< souffle::interpreter::Index >