#pragma once #include #include #include #include #include namespace c10 { class C10_API SymbolicIntNode : public std::enable_shared_from_this { public: c10::SymInt toSymInt(); virtual ~SymbolicIntNode(){}; virtual std::ostream& operator<<(std::ostream& os) { return os; }; }; class C10_API SymIntTable { public: uint64_t addNode(std::shared_ptr sin); std::shared_ptr getNode(size_t index); private: std::vector> nodes_; std::mutex mutex_; }; C10_API SymIntTable& getSymIntTable(); } // namespace c10