mirror of
https://github.com/fluencelabs/aquavm
synced 2025-06-01 09:01:22 +00:00
* `ValueAggregate` refactoring 0. Service results, canon results and literals are constructed as separate types that are further wrapped with `ValueAggregate`. 1. `ValueAggregate` is enum that contains all the provenance info. 2. Construction methods get provenance information as well. * Rename CID state field Prepare to adding a canon CID field: rename `canon_tracker`/`canon_store` to `canon_element_tracker`/`canon_element_store`. * Add canon result store/tracker * Rename some structs that have CIDs inside Reflect explicitly that they contain CIDs inside: `CanonResultAggregate` -> `CanonResultCidAggregate` `ServiceResultAggregate` -> `ServiceResultCidAggregate` --------- Co-authored-by: Mike Voronov <michail.vms@gmail.com>
29 lines
962 B
Rust
29 lines
962 B
Rust
/*
|
|
* Copyright 2020 Fluence Labs Limited
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
mod resolvable_impl;
|
|
|
|
use crate::execution_step::ExecutionCtx;
|
|
use crate::execution_step::ExecutionResult;
|
|
use crate::execution_step::RcSecurityTetraplets;
|
|
use crate::JValue;
|
|
|
|
use air_interpreter_data::Provenance;
|
|
|
|
pub(crate) trait Resolvable {
|
|
fn resolve(&self, ctx: &ExecutionCtx<'_>) -> ExecutionResult<(JValue, RcSecurityTetraplets, Provenance)>;
|
|
}
|