Fix builds.
This commit is contained in:
parent
3e7408511e
commit
02ef119603
@ -1,7 +1,8 @@
|
||||
//! Module that defines the public compilation API of [`Engine`].
|
||||
|
||||
use crate::parser::{ParseResult, ParseState};
|
||||
use crate::{Engine, OptimizationLevel, Scope, StringsInterner, AST};
|
||||
use crate::types::StringsInterner;
|
||||
use crate::{Engine, OptimizationLevel, Scope, AST};
|
||||
#[cfg(feature = "no_std")]
|
||||
use std::prelude::v1::*;
|
||||
|
||||
|
@ -2,10 +2,9 @@
|
||||
|
||||
use crate::eval::{Caches, GlobalRuntimeState};
|
||||
use crate::parser::ParseState;
|
||||
use crate::types::dynamic::Variant;
|
||||
use crate::types::{dynamic::Variant, StringsInterner};
|
||||
use crate::{
|
||||
reify, Dynamic, Engine, OptimizationLevel, Position, RhaiResult, RhaiResultOf, Scope,
|
||||
StringsInterner, AST, ERR,
|
||||
reify, Dynamic, Engine, OptimizationLevel, Position, RhaiResult, RhaiResultOf, Scope, AST, ERR,
|
||||
};
|
||||
#[cfg(feature = "no_std")]
|
||||
use std::prelude::v1::*;
|
||||
|
@ -3,7 +3,8 @@
|
||||
|
||||
use crate::parser::{ParseSettingFlags, ParseState};
|
||||
use crate::tokenizer::Token;
|
||||
use crate::{Engine, LexError, Map, OptimizationLevel, RhaiResultOf, Scope, StringsInterner};
|
||||
use crate::types::StringsInterner;
|
||||
use crate::{Engine, LexError, Map, OptimizationLevel, RhaiResultOf, Scope};
|
||||
#[cfg(feature = "no_std")]
|
||||
use std::prelude::v1::*;
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
//! Module that defines the public function/module registration API of [`Engine`].
|
||||
|
||||
use crate::func::{FnCallArgs, RegisterNativeFunction, SendSync};
|
||||
use crate::module::ModuleFlags;
|
||||
use crate::types::dynamic::Variant;
|
||||
use crate::{
|
||||
Engine, FnAccess, FnNamespace, Identifier, Module, NativeCallContext, RhaiResultOf, Shared,
|
||||
@ -743,9 +742,9 @@ impl Engine {
|
||||
}
|
||||
|
||||
let exclude_flags = if include_packages {
|
||||
ModuleFlags::INTERNAL
|
||||
crate::module::ModuleFlags::INTERNAL
|
||||
} else {
|
||||
ModuleFlags::INTERNAL | ModuleFlags::STANDARD_LIB
|
||||
crate::module::ModuleFlags::INTERNAL | crate::module::ModuleFlags::STANDARD_LIB
|
||||
};
|
||||
|
||||
signatures.extend(
|
||||
|
@ -2,7 +2,8 @@
|
||||
|
||||
use crate::eval::{Caches, GlobalRuntimeState};
|
||||
use crate::parser::ParseState;
|
||||
use crate::{Engine, RhaiResultOf, Scope, StringsInterner, AST};
|
||||
use crate::types::StringsInterner;
|
||||
use crate::{Engine, RhaiResultOf, Scope, AST};
|
||||
#[cfg(feature = "no_std")]
|
||||
use std::prelude::v1::*;
|
||||
|
||||
|
@ -311,7 +311,7 @@ impl Module {
|
||||
dynamic_functions_filter: BloomFilterU64::new(),
|
||||
type_iterators: None,
|
||||
all_type_iterators: None,
|
||||
flags: ModuleFlags::empty(),
|
||||
flags: ModuleFlags::INDEXED,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
//! Implementations of [`serde::Deserialize`].
|
||||
|
||||
use crate::{Dynamic, Identifier, ImmutableString, Scope, INT};
|
||||
use num_traits::FromPrimitive;
|
||||
use serde::{
|
||||
de::{Error, SeqAccess, Visitor},
|
||||
Deserialize, Deserializer,
|
||||
@ -10,6 +9,9 @@ use std::fmt;
|
||||
#[cfg(feature = "no_std")]
|
||||
use std::prelude::v1::*;
|
||||
|
||||
#[cfg(feature = "decimal")]
|
||||
use num_traits::FromPrimitive;
|
||||
|
||||
struct DynamicVisitor;
|
||||
|
||||
impl<'de> Visitor<'de> for DynamicVisitor {
|
||||
@ -56,7 +58,7 @@ impl<'de> Visitor<'de> for DynamicVisitor {
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
}
|
||||
#[inline]
|
||||
@ -75,7 +77,7 @@ impl<'de> Visitor<'de> for DynamicVisitor {
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
}
|
||||
#[inline(always)]
|
||||
@ -106,7 +108,7 @@ impl<'de> Visitor<'de> for DynamicVisitor {
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
}
|
||||
#[inline]
|
||||
@ -124,7 +126,7 @@ impl<'de> Visitor<'de> for DynamicVisitor {
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
#[inline]
|
||||
fn visit_u128<E: Error>(self, v: u128) -> Result<Self::Value, E> {
|
||||
@ -141,18 +143,44 @@ impl<'de> Visitor<'de> for DynamicVisitor {
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
#[inline(always)]
|
||||
fn visit_f32<E: Error>(self, v: f32) -> Result<Self::Value, E> {
|
||||
Ok(crate::FLOAT::from(v).into())
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok((v as crate::FLOAT).into());
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
{
|
||||
#[cfg(feature = "decimal")]
|
||||
if let Some(n) = rust_decimal::Decimal::from_f32(v) {
|
||||
return Ok(Dynamic::from_decimal(n));
|
||||
}
|
||||
|
||||
Err(Error::custom(format!(
|
||||
"floating-point number is not supported: {v}"
|
||||
)))
|
||||
}
|
||||
}
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
#[inline(always)]
|
||||
fn visit_f64<E: Error>(self, v: f64) -> Result<Self::Value, E> {
|
||||
Ok(crate::FLOAT::from(v).into())
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok((v as crate::FLOAT).into());
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
{
|
||||
#[cfg(feature = "decimal")]
|
||||
if let Some(n) = rust_decimal::Decimal::from_f64(v) {
|
||||
return Ok(Dynamic::from_decimal(n));
|
||||
}
|
||||
|
||||
Err(Error::custom(format!(
|
||||
"floating-point number is not supported: {v}"
|
||||
)))
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "no_float")]
|
||||
|
@ -1,7 +1,6 @@
|
||||
//! Implement serialization support of [`Dynamic`][crate::Dynamic] for [`serde`].
|
||||
|
||||
use crate::{Dynamic, Identifier, Position, RhaiError, RhaiResult, RhaiResultOf, ERR, INT};
|
||||
use num_traits::FromPrimitive;
|
||||
use serde::ser::{
|
||||
Error, SerializeMap, SerializeSeq, SerializeStruct, SerializeTuple, SerializeTupleStruct,
|
||||
};
|
||||
@ -10,6 +9,9 @@ use std::fmt;
|
||||
#[cfg(feature = "no_std")]
|
||||
use std::prelude::v1::*;
|
||||
|
||||
#[cfg(feature = "decimal")]
|
||||
use num_traits::FromPrimitive;
|
||||
|
||||
/// Serializer for [`Dynamic`][crate::Dynamic].
|
||||
pub struct DynamicSerializer {
|
||||
/// Buffer to hold a temporary key.
|
||||
@ -146,7 +148,7 @@ impl Serializer for &mut DynamicSerializer {
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
}
|
||||
|
||||
@ -166,7 +168,7 @@ impl Serializer for &mut DynamicSerializer {
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
}
|
||||
|
||||
@ -200,7 +202,7 @@ impl Serializer for &mut DynamicSerializer {
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
}
|
||||
|
||||
@ -219,7 +221,7 @@ impl Serializer for &mut DynamicSerializer {
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
|
||||
#[inline]
|
||||
@ -237,40 +239,43 @@ impl Serializer for &mut DynamicSerializer {
|
||||
return Ok(Dynamic::from_float(v as crate::FLOAT));
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
Err(Error::custom(format!("integer number too large: {}", v)))
|
||||
Err(Error::custom(format!("integer number too large: {v}")))
|
||||
}
|
||||
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
#[inline(always)]
|
||||
fn serialize_f32(self, v: f32) -> RhaiResultOf<Self::Ok> {
|
||||
Ok(crate::FLOAT::from(v).into())
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok((v as crate::FLOAT).into());
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
{
|
||||
#[cfg(feature = "decimal")]
|
||||
if let Some(n) = rust_decimal::Decimal::from_f32(v) {
|
||||
return Ok(Dynamic::from_decimal(n));
|
||||
}
|
||||
|
||||
Err(Error::custom(format!(
|
||||
"floating-point number is not supported: {v}"
|
||||
)))
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
#[inline(always)]
|
||||
fn serialize_f64(self, v: f64) -> RhaiResultOf<Self::Ok> {
|
||||
Ok(crate::FLOAT::from(v).into())
|
||||
#[cfg(not(feature = "no_float"))]
|
||||
return Ok((v as crate::FLOAT).into());
|
||||
|
||||
#[allow(unreachable_code)]
|
||||
{
|
||||
#[cfg(feature = "decimal")]
|
||||
if let Some(n) = rust_decimal::Decimal::from_f64(v) {
|
||||
return Ok(Dynamic::from_decimal(n));
|
||||
}
|
||||
|
||||
#[cfg(feature = "no_float")]
|
||||
#[cfg(feature = "decimal")]
|
||||
#[inline]
|
||||
fn serialize_f32(self, v: f32) -> RhaiResultOf<Self::Ok> {
|
||||
use std::convert::TryFrom;
|
||||
|
||||
rust_decimal::Decimal::try_from(v)
|
||||
.map(|v| v.into())
|
||||
.map_err(Error::custom)
|
||||
Err(Error::custom(format!(
|
||||
"floating-point number is not supported: {v}"
|
||||
)))
|
||||
}
|
||||
#[cfg(feature = "no_float")]
|
||||
#[cfg(feature = "decimal")]
|
||||
#[inline]
|
||||
fn serialize_f64(self, v: f64) -> RhaiResultOf<Self::Ok> {
|
||||
use std::convert::TryFrom;
|
||||
|
||||
rust_decimal::Decimal::try_from(v)
|
||||
.map(|v| v.into())
|
||||
.map_err(Error::custom)
|
||||
}
|
||||
|
||||
#[inline(always)]
|
||||
|
@ -266,7 +266,8 @@ fn test_custom_syntax_raw() -> Result<(), Box<EvalAltResult>> {
|
||||
*state = Dynamic::FALSE;
|
||||
Ok(Some("$ident$".into()))
|
||||
}
|
||||
2 => match stream[1].as_str() {
|
||||
2 => {
|
||||
match stream[1].as_str() {
|
||||
"world" if state.as_bool().unwrap_or(false) => Ok(Some("$$world".into())),
|
||||
"world" => Ok(Some("$$hello".into())),
|
||||
"kitty" => {
|
||||
@ -275,7 +276,8 @@ fn test_custom_syntax_raw() -> Result<(), Box<EvalAltResult>> {
|
||||
}
|
||||
s => Err(LexError::ImproperSymbol(s.to_string(), String::new())
|
||||
.into_err(Position::NONE)),
|
||||
},
|
||||
}
|
||||
}
|
||||
_ => unreachable!(),
|
||||
},
|
||||
true,
|
||||
|
Loading…
Reference in New Issue
Block a user