Skip to main content

Object

Struct Object 

Source
pub struct Object<'a>(/* private fields */);
Expand description

A wrapper around FREObject.

This type assumes that the underlying handle is always valid. The runtime is responsible for ensuring the correctness and lifetime of the handle.

Note that the handle may still be as3::null, depending on the API behavior. In such cases, as3::null is treated as a valid value at the ABI level, but may represent the absence of an object.

Implementations§

Source§

impl<'a> Object<'a>

Source

pub fn new( _: &CurrentContext<'a>, class: UCStr, args: Option<&[Object<'a>]>, ) -> Result<Object<'a>, ExternalError<'a>>

Source

pub fn with_native_window<F, R>(self, f: F) -> Result<R, FfiError>
where F: FnOnce(FRENativeWindow) -> R + Sync,

FRENativeWindow is only valid for the duration of this closure call.

Using as3::null inside the closure is meaningless and may lead to unintended FFI call ordering.

This is a minimal safety wrapper around the underlying FFI. Its current placement, shape, and usage are not ideal, and it is expected to be refactored if the ANE C API allows more precise determination of an object’s concrete type.

Source

pub fn with_native_window_3d<F, R>(self, f: F) -> Result<R, ExternalError<'a>>
where F: FnOnce(FRENativeWindow, &[Option<Context3D<'a>>]) -> R + Sync,

Using as3::null inside the closure is meaningless and may lead to unintended FFI call ordering.

This is a minimal safety wrapper around the underlying FFI. Its current placement, shape, and usage are not ideal, and it is expected to be refactored if the ANE C API allows more precise determination of an object’s concrete type.

Trait Implementations§

Source§

impl<'a> AsObject<'a> for Object<'a>

Source§

const TYPE: Type = Type::Object

The Type associated with the struct. Read more
Source§

fn as_object(self) -> Object<'a>

Source§

fn as_ptr(self) -> FREObject

Source§

fn is_null(self) -> bool

Source§

fn get_type(self) -> Type

Returns the runtime type of the object. Read more
Source§

fn get_property(self, name: UCStr) -> Result<Object<'a>, ExternalError<'a>>

Source§

fn set_property<O: AsObject<'a>>( self, name: UCStr, value: O, ) -> Result<(), ExternalError<'a>>

Source§

fn call_method( self, name: UCStr, args: Option<&[Object<'_>]>, ) -> Result<Object<'a>, ExternalError<'a>>

Source§

fn toString(self) -> Result<String<'a>, ExternalError<'a>>

Return Err if this is null or undefined.
Source§

impl<'a> Clone for Object<'a>

Source§

fn clone(&self) -> Object<'a>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Debug for Object<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Object<'_>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Display for Object<'_>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<()> for Object<'_>

Source§

fn from(_: ()) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<Array<'a>> for Object<'a>

Source§

fn from(value: Array<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<BitmapData<'a>> for Object<'a>

Source§

fn from(value: BitmapData<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<Boolean<'a>> for Object<'a>

Source§

fn from(value: Boolean<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<ByteArray<'a>> for Object<'a>

Source§

fn from(value: ByteArray<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<Context3D<'a>> for Object<'a>

Source§

fn from(value: Context3D<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<ErrorObject<'a>> for Object<'a>

Source§

fn from(value: ErrorObject<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<Number<'a>> for Object<'a>

Source§

fn from(value: Number<'a>) -> Self

Converts to this type from the input type.
Source§

impl From<Object<'_>> for FREObject

Source§

fn from(value: Object<'_>) -> Self

Converts to this type from the input type.
Source§

impl<'a, O: AsObject<'a>> From<Option<O>> for Object<'a>

Source§

fn from(value: Option<O>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<StringObject<'a>> for Object<'a>

Source§

fn from(value: StringObject<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<Vector<'a>> for Object<'a>

Source§

fn from(value: Vector<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<int<'a>> for Object<'a>

Source§

fn from(value: int<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<uint<'a>> for Object<'a>

Source§

fn from(value: uint<'a>) -> Self

Converts to this type from the input type.
Source§

impl<'a> PartialEq for Object<'a>

Source§

fn eq(&self, other: &Object<'a>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'a> TryAs<'a, Array<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl<'a> TryAs<'a, BitmapData<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl<'a> TryAs<'a, Boolean<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl<'a> TryAs<'a, ByteArray<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl<'a> TryAs<'a, Number<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl<'a> TryAs<'a, StringObject<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl<'a> TryAs<'a, Vector<'a>> for Object<'a>

Source§

fn try_as(self) -> Result<T, Type>

Source§

impl TryFrom<Object<'_>> for bool

Source§

type Error = FfiError

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'_>) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl TryFrom<Object<'_>> for f64

Source§

type Error = FfiError

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'_>) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl TryFrom<Object<'_>> for i32

Source§

type Error = FfiError

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'_>) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl TryFrom<Object<'_>> for u32

Source§

type Error = FfiError

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'_>) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for &'a str

Source§

type Error = FfiError

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'_>) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for Array<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for BitmapData<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for Boolean<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for ByteArray<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for Number<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for StringObject<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> TryFrom<Object<'a>> for Vector<'a>

Source§

type Error = Type

The type returned in the event of a conversion error.
Source§

fn try_from(value: Object<'a>) -> Result<Self, Type>

Performs the conversion.
Source§

impl<'a> Copy for Object<'a>

Source§

impl<'a> Eq for Object<'a>

Source§

impl<'a> StructuralPartialEq for Object<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for Object<'a>

§

impl<'a> RefUnwindSafe for Object<'a>

§

impl<'a> !Send for Object<'a>

§

impl<'a> !Sync for Object<'a>

§

impl<'a> Unpin for Object<'a>

§

impl<'a> UnsafeUnpin for Object<'a>

§

impl<'a> UnwindSafe for Object<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<'a, O> ToUcstrLossy for O
where O: AsObject<'a>,

Source§

impl<'a, O> TryAs<'a, Object<'a>> for O
where O: AsObject<'a>,

Source§

fn try_as(self) -> Result<Object<'a>, Type>

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.