dtcs 0.10.1

Reference implementation of the Data Transformation Contract Standard (DTCS)
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! Compiler trait (SPEC Chapter 15).

use super::CompileResult;
use crate::capability::EngineCapabilityDeclaration;
use crate::plan::TransformationPlan;

/// A DTCS compiler lowering transformation plans to execution plans.
pub trait Compiler {
    /// Target engine identifier.
    fn target_id(&self) -> &str;

    /// Compile a transformation plan for this backend.
    fn compile(
        &self,
        plan: &TransformationPlan,
        capability: &EngineCapabilityDeclaration,
    ) -> CompileResult;
}