Analysis pass identifying relations which do not contribute to the computation of the output relations.  
 More...
#include <RedundantRelations.h>
Analysis pass identifying relations which do not contribute to the computation of the output relations. 
Definition at line 44 of file RedundantRelations.h.
◆ RedundantRelationsAnalysis()
  
  | 
        
          | souffle::ast::analysis::RedundantRelationsAnalysis::RedundantRelationsAnalysis | ( |  | ) |  |  | inline | 
 
 
◆ getRedundantRelations()
  
  | 
        
          | const std::set<const Relation*>& souffle::ast::analysis::RedundantRelationsAnalysis::getRedundantRelations | ( |  | ) | const |  | inline | 
 
 
◆ print()
  
  | 
        
          | void souffle::ast::analysis::RedundantRelationsAnalysis::print | ( | std::ostream & |  | ) | const |  | overridevirtual | 
 
 
◆ run()
  
  | 
        
          | void souffle::ast::analysis::RedundantRelationsAnalysis::run | ( | const TranslationUnit & |  | ) |  |  | overridevirtual | 
 
run analysis for a Ast translation unit 
Implements souffle::ast::analysis::Analysis.
Definition at line 41 of file RedundantRelations.cpp.
   44         if (ioType->isOutput(r)) {
 
   51     while (!work.empty()) {
 
   53         const Relation* u = *(work.begin());
 
   54         work.erase(work.begin());
 
   55         notRedundant.insert(u);
 
   60             if (notRedundant.count(predecessor) == 0u) {
 
   61                 work.insert(predecessor);
 
   69         if (notRedundant.count(r) == 0u) {
 
 
 
 
◆ name
  
  | 
        
          | constexpr const char* souffle::ast::analysis::RedundantRelationsAnalysis::name = "redundant-relations" |  | staticconstexpr | 
 
 
◆ precedenceGraph
◆ redundantRelations
  
  | 
        
          | std::set<const Relation*> souffle::ast::analysis::RedundantRelationsAnalysis::redundantRelations |  | private | 
 
 
The documentation for this class was generated from the following files: