1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
//! [`Association`][ref/Association]<sub>WL</sub> data type — `<|k -> v, ...|>`.
//!
//! `Association` is a plain type alias for `Vec<RuleEntry>`. Use the
//! ordinary `Vec` API (`push`, `iter`, `len`, …); there is no map-style
//! lookup — iterate to find an entry by key.
//!
//! # Example
//!
//! ```
//! use wolfram_expr::{Association, Expr, RuleEntry};
//!
//! let mut a: Association = Association::new();
//! a.push(RuleEntry::rule(Expr::from("eager"), Expr::from(1)));
//! a.push(RuleEntry::rule_delayed(Expr::from("lazy"), Expr::from(2)));
//! ```
//!
//! [ref/Association]: https://reference.wolfram.com/language/ref/Association.html
use crateExpr;
/// Single association entry — key, value, and a flag indicating
/// `Rule` (`->`, immediate) vs `RuleDelayed` (`:>`, held).
/// Wolfram Language `<|...|>` — an ordered list of [`RuleEntry`].
///
/// A plain type alias for `Vec<RuleEntry>`. Insertion order is preserved.
/// No map-style lookup is exposed; iterate to find an entry by key.
pub type Association = ;