载入中...
搜索中...
未找到
ConditionWatch.cpp
浏览该文件的文档.
65 if (out.empty() || (declaration && declaration->dependencies.empty() && condition.key().empty())) {
68 "policy_call conditions require a policy name or declared dependencies for indexing", "policy", {},
84 eve::DiagnosticCode::InvalidArgument, "condition tree is invalid", "condition", {}, "emergence.watch"));
93 return eve::Result<std::vector<std::string>>::success(std::vector<std::string>(unique.begin(), unique.end()));
Derive inverted-index watch keys from a decision::Condition AST.
Stable, structured diagnostics shared by engine modules.
Authoritative, rule-visible world facts implementing EvaluationContext.
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
Type kind() const noexcept
Compatibility spelling for the former dialogue data tree.
Definition Value.h:85
Definition ConditionCodec.cpp:10
eve::Result< std::vector< std::string > > collectWatchKeys(const decision::Condition &condition)
Collect the canonical fact keys a condition depends on.
Definition ConditionWatch.cpp:81
@ Authority
@ Resource
@ Attribute
eve::Result< std::pair< FactDomain, std::string > > parseFactKey(std::string_view key)
Parse a canonical watch key into domain and leaf name.
Definition FactStore.cpp:113
std::string makeFactKey(FactDomain domain, std::string_view name)
Build the canonical watch key for one fact domain.
Definition FactStore.cpp:106
@ InvalidArgument