use super::*;
#[cfg(feature = "plexus-mlir-opt")]
use crate::features::runtime::api::plexus::execute_serialized_plan_with_pipeline_name_override;
#[cfg(feature = "plexus-mlir-opt")]
use crate::features::runtime::api::plexus::execute_serialized_plan_with_pipeline_override;
use crate::features::runtime::api::plexus::PlexusIridiumEngine;
use ::plexus_engine::PlanEngine;
#[cfg(feature = "plexus-mlir-opt")]
use plexus_ir::PIPELINE_CORE;
use plexus_serde::{
current_plan_version, deserialize_plan, serialize_plan, CmpOp, ColDef, ColKind, ExpandDir,
Expr, LogicalType, Op, Plan, SortDir, Version,
};
fn serialized_plan_bytes(version: (u32, u32, u32), ops: Vec<Op>, root_op: u32) -> Vec<u8> {
let plan = Plan {
version: if version == (1, 0, 0) {
current_plan_version("iridium-tests")
} else {
Version {
major: version.0,
minor: version.1,
patch: version.2,
producer: "iridium-tests".to_string(),
}
},
ops,
root_op,
};
serialize_plan(&plan).expect("serialize plan")
}
fn scan_nodes() -> Op {
Op::ScanNodes {
labels: Vec::new(),
schema: vec![ColDef {
name: "n".to_string(),
kind: ColKind::Node,
logical_type: LogicalType::NodeRef,
}],
must_labels: Vec::new(),
forbidden_labels: Vec::new(),
est_rows: 64,
selectivity: 1.0,
graph_ref: None,
}
}
mod aggregate;
mod basic;
mod expand;
mod pipeline;
mod projection;