aboutsummaryrefslogtreecommitdiffstats
path: root/src/vm.rs
diff options
context:
space:
mode:
authorEdvard Thörnros <edvard.thornros@gmail.com>2021-02-17 21:15:54 +0100
committerEdvard Thörnros <edvard.thornros@gmail.com>2021-02-17 21:15:54 +0100
commit090dd8c52e4ae60742fe8bad7b74e18bb808ba0d (patch)
tree249b5857b5dc8d8be7b89a136405fce50856730a /src/vm.rs
parentb205748bde51c551468a8dc89123f85b67c660dd (diff)
downloadsylt-090dd8c52e4ae60742fe8bad7b74e18bb808ba0d.tar.gz
use enums instead of 2 bools
Diffstat (limited to 'src/vm.rs')
-rw-r--r--src/vm.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vm.rs b/src/vm.rs
index 20125be..5e7810d 100644
--- a/src/vm.rs
+++ b/src/vm.rs
@@ -557,7 +557,7 @@ impl VM {
Value::Function(_, block) => {
self.push(Value::Function(Vec::new(), block.clone()));
- if block.borrow().constant && !block.borrow().linked {
+ if block.borrow().needs_linking() {
error!(self,
ErrorKind::InvalidProgram,
format!("Calling function '{}' before all captured variables are declared.",
@@ -676,7 +676,7 @@ impl VM {
Op::Link(slot) => {
match self.constant(slot).clone() {
Value::Function(_, block) => {
- block.borrow_mut().linked = true;
+ block.borrow_mut().link();
}
value => {
error!(self,