dfir_lang/graph/ops/
initialize.rs
1use syn::parse_quote_spanned;
2
3use super::{
4 OperatorCategory, OperatorConstraints, WriteContextArgs, RANGE_0, RANGE_1,
5};
6
7pub const INITIALIZE: OperatorConstraints = OperatorConstraints {
18 name: "initialize",
19 categories: &[OperatorCategory::Source],
20 hard_range_inn: RANGE_0,
21 soft_range_inn: RANGE_0,
22 hard_range_out: RANGE_1,
23 soft_range_out: RANGE_1,
24 num_args: 0,
25 persistence_args: RANGE_0,
26 type_args: RANGE_0,
27 is_external_input: false,
28 has_singleton_output: false,
29 flo_type: None,
30 ports_inn: None,
31 ports_out: None,
32 input_delaytype_fn: |_| None,
33 write_fn: |wc @ &WriteContextArgs { op_span, .. }, diagnostics| {
34 let wc = WriteContextArgs {
35 arguments: &parse_quote_spanned!(op_span=> [()]),
36 ..wc.clone()
37 };
38 (super::source_iter::SOURCE_ITER.write_fn)(&wc, diagnostics)
39 },
40};