Skip to content

Commit cd5a74e

Browse files
committed
Built-in functions agora são armazenadas em tabela static com OnceLock
1 parent 65b0d90 commit cd5a74e

3 files changed

Lines changed: 153 additions & 333 deletions

File tree

src/interpreter/statement_execute.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use super::expression_eval::{eval, ExpressionResult};
22
use crate::environment::environment::Environment;
33
use crate::ir::ast::{Expression, Statement};
4-
use crate::stdlib::standard_library::meta_stmt_table;
4+
use crate::stdlib::standard_library::get_metabuiltins_table;
55

66
pub enum Computation {
77
Continue(Environment<Expression>),
@@ -194,7 +194,7 @@ pub fn execute(stmt: Statement, env: &Environment<Expression>) -> Result<Computa
194194
}
195195

196196
Statement::MetaStmt(ref name) => {
197-
let table = meta_stmt_table();
197+
let table = get_metabuiltins_table();
198198
if let Some(f) = table.get(name) {
199199
let next_stmt = f(&mut new_env);
200200
execute(next_stmt, &new_env)

0 commit comments

Comments
 (0)