Less memory allocations at runtime

This commit is contained in:
2026-02-02 21:55:10 +01:00
parent cd8182425a
commit 74fe999496
9 changed files with 146 additions and 457 deletions

View File

@@ -1,10 +1,12 @@
use std::sync::Arc;
use super::types::SourceSpan;
#[derive(Clone, Debug, PartialEq)]
pub enum Op {
PushInt(i64, Option<SourceSpan>),
PushFloat(f64, Option<SourceSpan>),
PushStr(String, Option<SourceSpan>),
PushStr(Arc<str>, Option<SourceSpan>),
Dup,
Dupn,
Drop,
@@ -71,7 +73,7 @@ pub enum Op {
Ftom,
SetTempo,
Every,
Quotation(Vec<Op>, Option<SourceSpan>),
Quotation(Arc<[Op]>, Option<SourceSpan>),
When,
Unless,
Adsr,