1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
use crate::Data; use crate::Ident; use crate::InvokeRef; use crate::Type; use crate::ValueRef; #[derive(Debug, Clone)] pub(crate) enum ValueNode { Unit, Str(String), Reference(ValueRef), ReferenceMut(ValueRef), Dereference(ValueRef), Binding { name: Ident, ty: Type }, DataStructure { name: String, data: Data<ValueRef> }, Invoke(InvokeRef), Destructure { parent: ValueRef, field: Ident }, }