Use alloc, core instead of std (#225)

- Replace std with alloc, core in most places in src
  Tests, bindings aren't changed.
- Introduce BuiltinsMap type alias inplace of HashMap.
  In no_std case, this could be aliases to BTreeMap
- Fix clippy warnings

Signed-off-by: Anand Krishnamoorthi <anakrish@microsoft.com>
This commit is contained in:
Anand Krishnamoorthi
2024-05-07 21:41:09 -04:00
committed by GitHub
parent 0a39e434db
commit 69d6426663
38 changed files with 137 additions and 165 deletions
+3 -3
View File
@@ -7,11 +7,11 @@ use crate::builtins::utils::{ensure_args_count, ensure_set};
use crate::lexer::Span;
use crate::value::Value;
use std::collections::{BTreeSet, HashMap};
use alloc::collections::BTreeSet;
use anyhow::{bail, Result};
pub fn register(m: &mut HashMap<&'static str, builtins::BuiltinFcn>) {
pub fn register(m: &mut builtins::BuiltinsMap<&'static str, builtins::BuiltinFcn>) {
m.insert("intersection", (intersection_of_set_of_sets, 1));
m.insert("union", (union_of_set_of_sets, 1));
}
@@ -56,7 +56,7 @@ fn intersection_of_set_of_sets(
};
if first {
res = (**s).clone();
res.clone_from(s);
first = false;
} else {
res = res.intersection(s).cloned().collect();