2020-02-04 02:22:44 +00:00
|
|
|
//! AVM2 values
|
|
|
|
|
2020-02-05 18:52:11 +00:00
|
|
|
use crate::avm2::object::Object;
|
|
|
|
use gc_arena::Collect;
|
2020-02-04 02:22:44 +00:00
|
|
|
|
|
|
|
/// An AVM2 value.
|
|
|
|
///
|
2020-02-05 18:52:11 +00:00
|
|
|
/// TODO: AVM2 also needs Scope, Namespace, and XML values.
|
|
|
|
#[derive(Clone, Collect, Debug)]
|
2020-02-04 02:22:44 +00:00
|
|
|
#[collect(no_drop)]
|
|
|
|
pub enum Value<'gc> {
|
|
|
|
Undefined,
|
|
|
|
Null,
|
|
|
|
Boolean(bool),
|
|
|
|
Number(f64),
|
|
|
|
String(String),
|
2020-02-05 18:52:11 +00:00
|
|
|
Object(Object<'gc>),
|
2020-02-04 02:22:44 +00:00
|
|
|
}
|