Skip to content

Commit 206cf63

Browse files
committed
fix: update rust interpreter to avoid global emit/scope state
Also this fixes lexical scoping. Signed-off-by: Nick Mitchell <[email protected]>
1 parent a8cac9b commit 206cf63

File tree

7 files changed

+281
-204
lines changed

7 files changed

+281
-204
lines changed

pdl-live-react/src-tauri/src/pdl/ast.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ pub trait SequencingBlock {
8787
fn parser(&self) -> &Option<PdlParser>;
8888
fn to_block(&self) -> PdlBlock;
8989
fn result_for(&self, output_results: Vec<PdlResult>) -> PdlResult;
90-
fn messages_for<T: Clone>(&self, output_messages: Vec<T>) -> Vec<T>;
90+
fn messages_for<T: Clone>(&self, output_messages: &Vec<T>) -> Vec<T>;
9191
}
9292

9393
/// Return the value of the last block if the list of blocks
@@ -149,7 +149,7 @@ impl SequencingBlock for LastOfBlock {
149149
None => "".into(),
150150
}
151151
}
152-
fn messages_for<T: Clone>(&self, output_messages: Vec<T>) -> Vec<T> {
152+
fn messages_for<T: Clone>(&self, output_messages: &Vec<T>) -> Vec<T> {
153153
match output_messages.last() {
154154
Some(m) => vec![m.clone()],
155155
None => vec![],
@@ -219,8 +219,8 @@ impl SequencingBlock for TextBlock {
219219
.join("\n"),
220220
)
221221
}
222-
fn messages_for<T: Clone>(&self, output_messages: Vec<T>) -> Vec<T> {
223-
output_messages
222+
fn messages_for<T: Clone>(&self, output_messages: &Vec<T>) -> Vec<T> {
223+
output_messages.clone()
224224
}
225225
}
226226

0 commit comments

Comments
 (0)