params fix

This commit is contained in:
2024-06-09 15:23:17 +02:00
parent c9a135f6d7
commit a19a864965
+36 -21
View File
@@ -110,13 +110,18 @@ impl Transpiler {
self.transpile(ast.tokens[3].value.clone(), indent + 1, vars.clone()) self.transpile(ast.tokens[3].value.clone(), indent + 1, vars.clone())
) )
.as_str(); .as_str();
for (name, var) in vars { let vvars = variables.clone();
if let Some(v) = variables.get_mut(&ast.tokens[0].value) { if let Some(v) = variables.get_mut(&ast.tokens[1].value) {
v.params.insert( for (name, var) in vars {
name, if !(vvars.contains_key(&name)) {
Variable::new_var(LexerState { line: 0, column: 0 }, var.desc), v.params.insert(
); name,
println!("{:?}", v); Variable::new_var(
LexerState { line: 0, column: 0 },
var.desc,
),
);
}
} }
} }
} else if ast.ast_type == AstType::VoidFunctionDeceleration { } else if ast.ast_type == AstType::VoidFunctionDeceleration {
@@ -133,13 +138,18 @@ impl Transpiler {
self.transpile(ast.tokens[3].value.clone(), indent + 1, vars.clone()) self.transpile(ast.tokens[3].value.clone(), indent + 1, vars.clone())
) )
.as_str(); .as_str();
for (name, var) in vars { let vvars = variables.clone();
if let Some(v) = variables.get_mut(&ast.tokens[0].value) { if let Some(v) = variables.get_mut(&ast.tokens[1].value) {
v.params.insert( for (name, var) in vars {
name, if !(vvars.contains_key(&name)) {
Variable::new_var(LexerState { line: 0, column: 0 }, var.desc), v.params.insert(
); name,
println!("{:?}", v); Variable::new_var(
LexerState { line: 0, column: 0 },
var.desc,
),
);
}
} }
} }
} else if ast.ast_type == AstType::StructDeceleration { } else if ast.ast_type == AstType::StructDeceleration {
@@ -161,13 +171,18 @@ impl Transpiler {
) )
.as_str(); .as_str();
result += "\n}\n"; result += "\n}\n";
for (name, var) in vars { let vvars = variables.clone();
if let Some(v) = variables.get_mut(&ast.tokens[0].value) { if let Some(v) = variables.get_mut(&ast.tokens[1].value) {
v.params.insert( for (name, var) in vars {
name, if !(vvars.contains_key(&name)) {
Variable::new_var(LexerState { line: 0, column: 0 }, var.desc), v.params.insert(
); name,
println!("{:?}", v); Variable::new_var(
LexerState { line: 0, column: 0 },
var.desc,
),
);
}
} }
} }
} else if ast.ast_type == AstType::VariableDeceleration { } else if ast.ast_type == AstType::VariableDeceleration {