载入中...
搜索中...
未找到
EditorTargetCoordinator.cpp
浏览该文件的文档.
30 explicit TargetEntry(IEditableTarget& value, IDomainOperationTarget& operations, std::uint64_t valueGeneration)
31 : target(&value), generation(valueGeneration), authority(&operations), transactions(&authority) {}
54 return eve::editing::failed<TransactionReceipt>(EditorStatus::NotFound, RuleId("editor.target.not-found"),
72 return eve::editing::failed<TransactionReceipt>(begun.code(), RuleId("editor.target.begin-failed"),
82 return eve::editing::failed<TransactionReceipt>(appended.code(), RuleId("editor.target.append-failed"),
122 eve::editing::EditingCommandDescriptor descriptor, eve::editing::EditingCommandPlanner planner) {
136 return eve::editing::failed<CommandPlan>(EditorStatus::NotFound, RuleId("editor.target.not-found"),
142 [state = impl_.get()](const CommandRequest&, const CommandPlan& plan) { return state->execute(plan); });
159 return eve::editing::failed<void>(EditorStatus::Unsupported, RuleId("editor.target.operations-unsupported"),
201void EditorTargetCoordinator::detach(EditorSession& session) noexcept { impl_->sessions.erase(&session); }
206 return eve::editing::failed<EditorValue>(EditorStatus::NotFound, RuleId("editor.target.not-found"),
218 return eve::editing::failed<TransactionReceipt>(EditorStatus::NotFound, RuleId("editor.target.not-found"),
226 return eve::editing::failed<TransactionReceipt>(EditorStatus::NotFound, RuleId("editor.target.not-found"),
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
UUID-backed identifier adapter for legacy textual boundaries.
Definition Identity.h:314
const std::string & value() const noexcept
Returns the exact legacy or canonical compatibility spelling.
Definition Identity.h:362
Editable-target capability that applies owning domain operations.
Definition EditingTargetOperations.h:11
eve::OptionalRef< C > capability()
Query a capability through its interface-owned stable identity.
Definition EditableTarget.h:82
virtual TargetDescriptor describe() const
Describe the target for tools and automation.
Definition EditableTarget.h:61
Optional capability exposing a deterministic, persistence-safe editing snapshot.
Definition EditableTarget.h:247
virtual Value snapshotValue() const =0
Capture the target without exposing mutable runtime storage.
In-process authority for a single editable runtime or document target.
Definition EditingAuthority.h:36
Deterministic owning value tree shared by authoring hosts.
Definition EditingValue.h:19
Registry and execution gate for UI-, script- and automation-neutral commands.
Definition EditorCommandService.h:51
Hosts interchangeable editor tools and routes their lifecycle/input.
Definition EditorSession.h:30
Result< TransactionReceipt > redo(const TargetId &target)
Redo.
Definition EditorTargetCoordinator.cpp:223
eve::editing::Result< void > registerPlannedCommand(eve::editing::EditingCommandDescriptor descriptor, eve::editing::EditingCommandPlanner planner) override
Registers planned command.
Definition EditorTargetCoordinator.cpp:121
Result< void > unregisterTarget(const TargetId &target)
Unregisters target.
Definition EditorTargetCoordinator.cpp:177
Result< EditorValue > inspect(const TargetId &target) const
Inspect.
Definition EditorTargetCoordinator.cpp:203
eve::editing::Result< std::size_t > unregisterOwner(const std::string &ownerModule) override
Unregisters owner.
Definition EditorTargetCoordinator.cpp:148
Result< void > bind(EditorSession &session, const TargetId &target)
Binds .
Definition EditorTargetCoordinator.cpp:191
EditorTargetCoordinator(EditorCommandService &commands)
Editor target coordinator.
Definition EditorTargetCoordinator.cpp:109
Result< TransactionReceipt > undo(const TargetId &target)
Undo.
Definition EditorTargetCoordinator.cpp:215
std::vector< TargetSummary > targets() const
Enumerate every registered target, ordered by id.
Definition EditorTargetCoordinator.cpp:231
Result< void > registerTarget(IEditableTarget &target)
Registers target.
Definition EditorTargetCoordinator.cpp:156
Local transaction coordinator backed by an injected edit authority.
Definition EditorTransactionService.h:48
Result< TransactionReceipt > commit() override
Preflight and commit all active operations through the authority.
Definition EditorTransactionService.cpp:74
Result< TransactionId > begin(TransactionSpec specification) override
Begin a transaction with a stable id and base revision.
Definition EditorTransactionService.cpp:60
Result< TransactionReceipt > undo() override
Compensate the most recent committed transaction.
Definition EditorTransactionService.cpp:82
Result< void > discard() override
Discard the active, not-yet-committed operation list.
Definition EditorTransactionService.cpp:76
Result< TransactionReceipt > redo() override
Reapply the most recently compensated transaction.
Definition EditorTransactionService.cpp:84
Result< void > append(DomainOperation operation) override
Append an operation to the active transaction without applying it.
Definition EditorTransactionService.cpp:68
std::function< Result< CommandPlan >(IEditableTarget &, const CommandRequest &)> EditingCommandPlanner
Side-effect-free planner invoked with the resolved target.
Definition EditingCommandRegistry.h:22
Result< void > noOp(std::vector< Diagnostic > diagnostics={})
Construct a successful void result for an operation that made no change.
Definition EditingResult.h:58
Definition ActionPreviewController.cpp:6
eve::editing::Value EditorValue
Compatibility alias for the UI-independent authoring value tree.
Definition EditorValue.h:8
Definition Container.h:602
std::vector< DomainOperation > operations
Definition EditingProtocol.h:78
std::uint64_t targetGeneration
Target lifetime generation captured while planning.
Definition EditingProtocol.h:71
Domain-owned metadata for one planned editing command.
Definition EditingCommandRegistry.h:12
Stable discovery metadata exposed by every editable target.
Definition EditableTarget.h:39
Presentation and execution metadata for a registered command.
Definition EditorCommandService.h:29
bool automationAllowed
Definition EditorCommandService.h:36
std::string ownerModule
Definition EditorCommandService.h:31
std::string displayName
Definition EditorCommandService.h:32
Definition EditorTargetCoordinator.cpp:100
std::uint64_t generation
Definition EditorTargetCoordinator.cpp:102
TargetId target
Definition EditorTargetCoordinator.cpp:101
std::shared_ptr< void > lifetime
Definition EditorTargetCoordinator.cpp:34
LocalTransactionBackend transactions
Definition EditorTargetCoordinator.cpp:37
LocalWorldAuthority authority
Definition EditorTargetCoordinator.cpp:36
std::uint64_t generation
Definition EditorTargetCoordinator.cpp:35
IEditableTarget * target
Definition EditorTargetCoordinator.cpp:33
TargetEntry(IEditableTarget &value, IDomainOperationTarget &operations, std::uint64_t valueGeneration)
Definition EditorTargetCoordinator.cpp:30
TargetEntry * entry(const TargetId &id)
Definition EditorTargetCoordinator.cpp:42
EditorCommandService * commands
Definition EditorTargetCoordinator.cpp:98
const TargetEntry * entry(const TargetId &id) const
Definition EditorTargetCoordinator.cpp:46
std::map< EditorSession *, SessionBinding > sessions
Definition EditorTargetCoordinator.cpp:104
Result< TransactionReceipt > execute(const CommandPlan &plan)
Definition EditorTargetCoordinator.cpp:51
std::map< TargetId, std::unique_ptr< TargetEntry > > targets
Definition EditorTargetCoordinator.cpp:99
Impl(EditorCommandService &value)
Definition EditorTargetCoordinator.cpp:40
std::uint64_t nextTargetGeneration
Definition EditorTargetCoordinator.cpp:106
std::vector< std::pair< CommandId, std::string > > registeredCommands
Definition EditorTargetCoordinator.cpp:105
Discovery metadata for one registered editable target.
Definition EditorTargetCoordinator.h:56
std::string id
Definition EditorTargetCoordinator.h:57
std::uint64_t generation
Definition EditorTargetCoordinator.h:60
std::string type
Definition EditorTargetCoordinator.h:58
std::uint64_t revision
Definition EditorTargetCoordinator.h:59