diff --git a/move-money-dynamic/wit/dynamic_node.wit b/move-money-dynamic/wit/dynamic_node.wit index e45cb91..be2d305 100644 --- a/move-money-dynamic/wit/dynamic_node.wit +++ b/move-money-dynamic/wit/dynamic_node.wit @@ -39,5 +39,8 @@ interface types { // This will apply to csv files only for simplicity. A separate node should be created for arbitrary readers/writers world dynamic { use types.{csv-readers, read-map, csv-writer}; + import log: func(message: string); + import log-error: func(error-message: string); + export evaluate: func(properties: read-map, readers: csv-readers, writer: csv-writer); } \ No newline at end of file diff --git a/src/graph/dynamic/dynamic_state.rs b/src/graph/dynamic/dynamic_state.rs index d6a0f11..2b8879e 100644 --- a/src/graph/dynamic/dynamic_state.rs +++ b/src/graph/dynamic/dynamic_state.rs @@ -28,4 +28,13 @@ impl DynamicState { } } +impl DynamicImports for DynamicState { + fn log(&mut self, message: String) { + println!("{}", message); + } + fn log_error(&mut self, message: String) { + eprintln!("{}", message); + } +} + impl Host for DynamicState {} diff --git a/wit/dynamic_node.wit b/wit/dynamic_node.wit index e45cb91..be2d305 100644 --- a/wit/dynamic_node.wit +++ b/wit/dynamic_node.wit @@ -39,5 +39,8 @@ interface types { // This will apply to csv files only for simplicity. A separate node should be created for arbitrary readers/writers world dynamic { use types.{csv-readers, read-map, csv-writer}; + import log: func(message: string); + import log-error: func(error-message: string); + export evaluate: func(properties: read-map, readers: csv-readers, writer: csv-writer); } \ No newline at end of file