Branch data Line data Source code
1 : : /****************************************************************************** 2 : : * This file is part of the cvc5 project. 3 : : * 4 : : * Copyright (c) 2009-2026 by the authors listed in the file AUTHORS 5 : : * in the top-level source directory and their institutional affiliations. 6 : : * All rights reserved. See the file COPYING in the top-level source 7 : : * directory for licensing information. 8 : : * **************************************************************************** 9 : : * 10 : : * The base class for everything that nees access to the environment (Env) 11 : : * instance, which gives access to global utilities available to internal code. 12 : : */ 13 : : 14 : : #include "smt/env_obj.h" 15 : : 16 : : #include "options/options.h" 17 : : #include "smt/env.h" 18 : : #include "theory/rewriter.h" 19 : : 20 : : namespace cvc5::internal { 21 : : 22 : 22936803 : EnvObj::EnvObj(Env& env) : d_env(env) {} 23 : : 24 : 101944301 : NodeManager* EnvObj::nodeManager() const { return d_env.getNodeManager(); } 25 : : 26 : 80709543 : Node EnvObj::rewrite(TNode node) const 27 : : { 28 : 80709543 : return d_env.getRewriter()->rewrite(node); 29 : : } 30 : : 31 : 7 : Node EnvObj::rewriteEqualityExt(TNode node) const 32 : : { 33 : 7 : return d_env.getRewriter()->rewriteEqualityExt(node); 34 : : } 35 : : 36 : 538772 : Node EnvObj::extendedRewrite(TNode node, bool aggr) const 37 : : { 38 : 538772 : return d_env.getRewriter()->extendedRewrite(node, aggr); 39 : : } 40 : 237614 : Node EnvObj::evaluate(TNode n, 41 : : const std::vector<Node>& args, 42 : : const std::vector<Node>& vals, 43 : : bool useRewriter) const 44 : : { 45 : 237614 : return d_env.evaluate(n, args, vals, useRewriter); 46 : : } 47 : 60835 : Node EnvObj::evaluate(TNode n, 48 : : const std::vector<Node>& args, 49 : : const std::vector<Node>& vals, 50 : : const std::unordered_map<Node, Node>& visited, 51 : : bool useRewriter) const 52 : : { 53 : 60835 : return d_env.evaluate(n, args, vals, visited, useRewriter); 54 : : } 55 : : 56 : 343790757 : const Options& EnvObj::options() const { return d_env.getOptions(); } 57 : : 58 : 49516707 : context::Context* EnvObj::context() const { return d_env.getContext(); } 59 : : 60 : 7336393 : context::UserContext* EnvObj::userContext() const 61 : : { 62 : 7336393 : return d_env.getUserContext(); 63 : : } 64 : : 65 : 357469791 : const LogicInfo& EnvObj::logicInfo() const { return d_env.getLogicInfo(); } 66 : : 67 : 9155661 : ResourceManager* EnvObj::resourceManager() const 68 : : { 69 : 9155661 : return d_env.getResourceManager(); 70 : : } 71 : : 72 : 9365632 : StatisticsRegistry& EnvObj::statisticsRegistry() const 73 : : { 74 : 9365632 : return d_env.getStatisticsRegistry(); 75 : : } 76 : : 77 : 4169177 : bool EnvObj::isOutputOn(OutputTag tag) const { return d_env.isOutputOn(tag); } 78 : : 79 : 20148 : std::ostream& EnvObj::output(OutputTag tag) const { return d_env.output(tag); } 80 : : 81 : 657 : bool EnvObj::isVerboseOn(int64_t level) const 82 : : { 83 : 657 : return d_env.isVerboseOn(level); 84 : : } 85 : : 86 : 1871698 : std::ostream& EnvObj::verbose(int64_t level) const 87 : : { 88 : 1871698 : return d_env.verbose(level); 89 : : } 90 : : 91 : 497 : std::ostream& EnvObj::warning() const { return verbose(0); } 92 : : 93 : : } // namespace cvc5::internal