Fix no_function build.

This commit is contained in:
Stephen Chung 2022-01-28 22:37:59 +08:00
parent cd4335a16f
commit 4ee6657b9d
3 changed files with 4 additions and 4 deletions

View File

@ -283,6 +283,7 @@ fn main() {
println!("{}", f)
}
#[cfg(not(feature = "no_function"))]
for f in main_ast.iter_functions() {
println!("{}", f)
}

View File

@ -93,7 +93,9 @@ impl Engine {
#[cfg(not(feature = "no_function"))]
if namespace.len() == 1 && namespace[0].name == crate::engine::KEYWORD_GLOBAL {
if let Some(ref constants) = global.constants {
if let Some(value) = crate::func::locked_write(constants).get_mut(var_name) {
if let Some(value) =
crate::func::locked_write(constants).get_mut(var_name)
{
let mut target: Target = value.clone().into();
// Module variables are constant
target.set_access_mode(AccessMode::ReadOnly);

View File

@ -22,9 +22,6 @@ use std::{
#[derive(Clone)]
pub struct GlobalRuntimeState<'a> {
/// Stack of module names.
//
// We cannot use Cow<str> here because `eval` may load a [module][Module] and
// the module name will live beyond the AST of the eval script text.
keys: StaticVec<Identifier>,
/// Stack of imported [modules][Module].
modules: StaticVec<Shared<Module>>,