|
| class | LMCAS::__attribute__ ((visibility("default"))) AssumptionContext |
| | Scoped assumption context with push/pop management.
|
| AssumptionVoidResult | LMCAS::apply_assumption_decl_checked (AssumptionContext &ctx, const AssumptionDecl &decl) |
| template<typename F> |
| auto | LMCAS::with_assumptions (AssumptionContext &ctx, const std::vector< AssumptionDecl > &decls, F &&callable) -> std::enable_if_t< std::is_void_v< decltype(callable())>, AssumptionVoidResult > |
| template<typename F> |
| auto | LMCAS::with_assumptions (AssumptionContext &ctx, const std::vector< AssumptionDecl > &decls, F &&callable) -> std::enable_if_t<!std::is_void_v< decltype(callable())>, Result< decltype(callable())> > |
| | Execute a callable within a temporary assumption scope.
|
| template<typename F> |
| auto | LMCAS::with_assumptions (AssumptionContext &ctx, std::initializer_list< AssumptionDecl > decls, F &&callable) -> decltype(with_assumptions(ctx, std::vector< AssumptionDecl >(decls), std::forward< F >(callable))) |
AssumptionContext class with scoped push/pop management.
Provides a scope stack where each scope has its own PropertyStore and RelationStore. Queries read through from the top scope down to the root, with child scope declarations shadowing parent declarations.
在文件 assumption_context.hpp 中定义.