pub struct ContextObject { /* private fields */ }
Expand description
Rust对象绑定的PB对象
Methods from Deref<Target = Object<'static>>§
Sourcepub unsafe fn get_native_ref<T: UserObject>(&self) -> Result<&'obj T>
pub unsafe fn get_native_ref<T: UserObject>(&self) -> Result<&'obj T>
Sourcepub unsafe fn get_native_mut<T: UserObject>(&mut self) -> Result<&'obj mut T>
pub unsafe fn get_native_mut<T: UserObject>(&mut self) -> Result<&'obj mut T>
共享对象
Sourcepub fn get_var_count(&self) -> pbulong
pub fn get_var_count(&self) -> pbulong
获取实例变量数量
§Examples
let cnt = obj.get_var_count("is_var");
//遍历所有变量并输出变量名
for id in 0..cnt {
let fid = unsafe { FieldId::new(id) };
println!("field id: {}, name: {}", id, obj.get_var_name(fid));
}
Sourcepub fn get_var_id(&self, name: impl AsPBStr) -> Option<FieldId>
pub fn get_var_id(&self, name: impl AsPBStr) -> Option<FieldId>
Sourcepub fn get_var_name(&self, fid: impl VarId) -> &PBStr
pub fn get_var_name(&self, fid: impl VarId) -> &PBStr
Sourcepub fn get_var_type(&self, fid: impl VarId) -> ValueType
pub fn get_var_type(&self, fid: impl VarId) -> ValueType
Sourcepub fn is_var_null(&self, fid: impl VarId) -> bool
pub fn is_var_null(&self, fid: impl VarId) -> bool
Sourcepub fn is_var_array(&self, fid: impl VarId) -> bool
pub fn is_var_array(&self, fid: impl VarId) -> bool
Sourcepub fn is_var_object(&self, fid: impl VarId) -> bool
pub fn is_var_object(&self, fid: impl VarId) -> bool
Sourcepub fn update_field(&self, fid: impl VarId) -> Result<()>
pub fn update_field(&self, fid: impl VarId) -> Result<()>
Sourcepub fn get_var_int(&self, fid: impl VarId) -> Option<pbint>
pub fn get_var_int(&self, fid: impl VarId) -> Option<pbint>
Sourcepub unsafe fn get_var_int_unchecked(&self, fid: impl VarId) -> Option<pbint>
pub unsafe fn get_var_int_unchecked(&self, fid: impl VarId) -> Option<pbint>
Sourcepub fn get_var_uint(&self, fid: impl VarId) -> Option<pbuint>
pub fn get_var_uint(&self, fid: impl VarId) -> Option<pbuint>
Sourcepub unsafe fn get_var_uint_unchecked(&self, fid: impl VarId) -> Option<pbuint>
pub unsafe fn get_var_uint_unchecked(&self, fid: impl VarId) -> Option<pbuint>
Sourcepub fn get_var_long(&self, fid: impl VarId) -> Option<pblong>
pub fn get_var_long(&self, fid: impl VarId) -> Option<pblong>
Sourcepub unsafe fn get_var_long_unchecked(&self, fid: impl VarId) -> Option<pblong>
pub unsafe fn get_var_long_unchecked(&self, fid: impl VarId) -> Option<pblong>
Sourcepub fn get_var_ulong(&self, fid: impl VarId) -> Option<pbulong>
pub fn get_var_ulong(&self, fid: impl VarId) -> Option<pbulong>
Sourcepub unsafe fn get_var_ulong_unchecked(&self, fid: impl VarId) -> Option<pbulong>
pub unsafe fn get_var_ulong_unchecked(&self, fid: impl VarId) -> Option<pbulong>
Sourcepub fn get_var_longlong(&self, fid: impl VarId) -> Option<pblonglong>
pub fn get_var_longlong(&self, fid: impl VarId) -> Option<pblonglong>
Sourcepub unsafe fn get_var_longlong_unchecked(
&self,
fid: impl VarId,
) -> Option<pblonglong>
pub unsafe fn get_var_longlong_unchecked( &self, fid: impl VarId, ) -> Option<pblonglong>
Sourcepub fn get_var_real(&self, fid: impl VarId) -> Option<pbreal>
pub fn get_var_real(&self, fid: impl VarId) -> Option<pbreal>
Sourcepub unsafe fn get_var_real_unchecked(&self, fid: impl VarId) -> Option<pbreal>
pub unsafe fn get_var_real_unchecked(&self, fid: impl VarId) -> Option<pbreal>
Sourcepub fn get_var_double(&self, fid: impl VarId) -> Option<pbdouble>
pub fn get_var_double(&self, fid: impl VarId) -> Option<pbdouble>
Sourcepub unsafe fn get_var_double_unchecked(
&self,
fid: impl VarId,
) -> Option<pbdouble>
pub unsafe fn get_var_double_unchecked( &self, fid: impl VarId, ) -> Option<pbdouble>
Sourcepub fn get_var_dec(&self, fid: impl VarId) -> Option<Decimal>
pub fn get_var_dec(&self, fid: impl VarId) -> Option<Decimal>
Sourcepub unsafe fn get_var_dec_unchecked(&self, fid: impl VarId) -> Option<Decimal>
pub unsafe fn get_var_dec_unchecked(&self, fid: impl VarId) -> Option<Decimal>
Sourcepub unsafe fn get_var_str(&self, fid: impl VarId) -> Option<&'obj PBStr>
pub unsafe fn get_var_str(&self, fid: impl VarId) -> Option<&'obj PBStr>
Sourcepub unsafe fn get_var_str_unchecked(
&self,
fid: impl VarId,
) -> Option<&'obj PBStr>
pub unsafe fn get_var_str_unchecked( &self, fid: impl VarId, ) -> Option<&'obj PBStr>
Sourcepub fn get_var_string(&self, fid: impl VarId) -> Option<PBString>
pub fn get_var_string(&self, fid: impl VarId) -> Option<PBString>
Sourcepub unsafe fn get_var_string_unchecked(
&self,
fid: impl VarId,
) -> Option<PBString>
pub unsafe fn get_var_string_unchecked( &self, fid: impl VarId, ) -> Option<PBString>
Sourcepub fn get_var_bool(&self, fid: impl VarId) -> Option<bool>
pub fn get_var_bool(&self, fid: impl VarId) -> Option<bool>
Sourcepub unsafe fn get_var_bool_unchecked(&self, fid: impl VarId) -> Option<bool>
pub unsafe fn get_var_bool_unchecked(&self, fid: impl VarId) -> Option<bool>
Sourcepub unsafe fn get_var_blob(&self, fid: impl VarId) -> Option<&'obj [u8]>
pub unsafe fn get_var_blob(&self, fid: impl VarId) -> Option<&'obj [u8]>
Sourcepub unsafe fn get_var_blob_unchecked(
&self,
fid: impl VarId,
) -> Option<&'obj [u8]>
pub unsafe fn get_var_blob_unchecked( &self, fid: impl VarId, ) -> Option<&'obj [u8]>
Sourcepub fn get_var_date(&self, fid: impl VarId) -> Option<NaiveDate>
pub fn get_var_date(&self, fid: impl VarId) -> Option<NaiveDate>
Sourcepub unsafe fn get_var_date_unchecked(
&self,
fid: impl VarId,
) -> Option<NaiveDate>
pub unsafe fn get_var_date_unchecked( &self, fid: impl VarId, ) -> Option<NaiveDate>
Sourcepub fn get_var_time(&self, fid: impl VarId) -> Option<NaiveTime>
pub fn get_var_time(&self, fid: impl VarId) -> Option<NaiveTime>
Sourcepub unsafe fn get_var_time_unchecked(
&self,
fid: impl VarId,
) -> Option<NaiveTime>
pub unsafe fn get_var_time_unchecked( &self, fid: impl VarId, ) -> Option<NaiveTime>
Sourcepub fn get_var_datetime(&self, fid: impl VarId) -> Option<NaiveDateTime>
pub fn get_var_datetime(&self, fid: impl VarId) -> Option<NaiveDateTime>
Sourcepub unsafe fn get_var_datetime_unchecked(
&self,
fid: impl VarId,
) -> Option<NaiveDateTime>
pub unsafe fn get_var_datetime_unchecked( &self, fid: impl VarId, ) -> Option<NaiveDateTime>
Sourcepub fn get_var_char(&self, fid: impl VarId) -> Option<WideChar>
pub fn get_var_char(&self, fid: impl VarId) -> Option<WideChar>
Sourcepub unsafe fn get_var_char_unchecked(&self, fid: impl VarId) -> Option<WideChar>
pub unsafe fn get_var_char_unchecked(&self, fid: impl VarId) -> Option<WideChar>
Sourcepub fn get_var_byte(&self, fid: impl VarId) -> Option<pbbyte>
pub fn get_var_byte(&self, fid: impl VarId) -> Option<pbbyte>
Sourcepub unsafe fn get_var_byte_unchecked(&self, fid: impl VarId) -> Option<pbbyte>
pub unsafe fn get_var_byte_unchecked(&self, fid: impl VarId) -> Option<pbbyte>
Sourcepub unsafe fn get_var_object(&self, fid: impl VarId) -> Option<Object<'obj>>
pub unsafe fn get_var_object(&self, fid: impl VarId) -> Option<Object<'obj>>
Sourcepub unsafe fn get_var_object_unchecked(
&self,
fid: impl VarId,
) -> Option<Object<'obj>>
pub unsafe fn get_var_object_unchecked( &self, fid: impl VarId, ) -> Option<Object<'obj>>
Sourcepub unsafe fn get_var_array(&self, fid: impl VarId) -> Option<Array<'obj>>
pub unsafe fn get_var_array(&self, fid: impl VarId) -> Option<Array<'obj>>
Sourcepub unsafe fn get_var_array_unchecked(
&self,
fid: impl VarId,
) -> Option<Array<'obj>>
pub unsafe fn get_var_array_unchecked( &self, fid: impl VarId, ) -> Option<Array<'obj>>
Sourcepub unsafe fn get_var_any(&self, fid: impl VarId) -> Option<Value<'obj>>
pub unsafe fn get_var_any(&self, fid: impl VarId) -> Option<Value<'obj>>
Sourcepub unsafe fn get_var_any_unchecked(
&self,
fid: impl VarId,
) -> Option<Value<'obj>>
pub unsafe fn get_var_any_unchecked( &self, fid: impl VarId, ) -> Option<Value<'obj>>
Sourcepub fn set_var_to_null(&self, fid: impl VarId)
pub fn set_var_to_null(&self, fid: impl VarId)
Sourcepub fn set_var_int(&mut self, fid: impl VarId, value: pbint) -> Result<()>
pub fn set_var_int(&mut self, fid: impl VarId, value: pbint) -> Result<()>
Sourcepub unsafe fn set_var_int_unchecked(
&mut self,
fid: impl VarId,
value: pbint,
) -> Result<()>
pub unsafe fn set_var_int_unchecked( &mut self, fid: impl VarId, value: pbint, ) -> Result<()>
Sourcepub fn set_var_uint(&mut self, fid: impl VarId, value: pbuint) -> Result<()>
pub fn set_var_uint(&mut self, fid: impl VarId, value: pbuint) -> Result<()>
Sourcepub unsafe fn set_var_uint_unchecked(
&mut self,
fid: impl VarId,
value: pbuint,
) -> Result<()>
pub unsafe fn set_var_uint_unchecked( &mut self, fid: impl VarId, value: pbuint, ) -> Result<()>
Sourcepub fn set_var_long(&mut self, fid: impl VarId, value: pblong) -> Result<()>
pub fn set_var_long(&mut self, fid: impl VarId, value: pblong) -> Result<()>
Sourcepub unsafe fn set_var_long_unchecked(
&mut self,
fid: impl VarId,
value: pblong,
) -> Result<()>
pub unsafe fn set_var_long_unchecked( &mut self, fid: impl VarId, value: pblong, ) -> Result<()>
Sourcepub fn set_var_ulong(&mut self, fid: impl VarId, value: pbulong) -> Result<()>
pub fn set_var_ulong(&mut self, fid: impl VarId, value: pbulong) -> Result<()>
Sourcepub unsafe fn set_var_ulong_unchecked(
&mut self,
fid: impl VarId,
value: pbulong,
) -> Result<()>
pub unsafe fn set_var_ulong_unchecked( &mut self, fid: impl VarId, value: pbulong, ) -> Result<()>
Sourcepub fn set_var_longlong(
&mut self,
fid: impl VarId,
value: pblonglong,
) -> Result<()>
pub fn set_var_longlong( &mut self, fid: impl VarId, value: pblonglong, ) -> Result<()>
Sourcepub unsafe fn set_var_longlong_unchecked(
&mut self,
fid: impl VarId,
value: pblonglong,
) -> Result<()>
pub unsafe fn set_var_longlong_unchecked( &mut self, fid: impl VarId, value: pblonglong, ) -> Result<()>
Sourcepub fn set_var_real(&mut self, fid: impl VarId, value: pbreal) -> Result<()>
pub fn set_var_real(&mut self, fid: impl VarId, value: pbreal) -> Result<()>
Sourcepub unsafe fn set_var_real_unchecked(
&mut self,
fid: impl VarId,
value: pbreal,
) -> Result<()>
pub unsafe fn set_var_real_unchecked( &mut self, fid: impl VarId, value: pbreal, ) -> Result<()>
Sourcepub fn set_var_double(&mut self, fid: impl VarId, value: pbdouble) -> Result<()>
pub fn set_var_double(&mut self, fid: impl VarId, value: pbdouble) -> Result<()>
Sourcepub unsafe fn set_var_double_unchecked(
&mut self,
fid: impl VarId,
value: pbdouble,
) -> Result<()>
pub unsafe fn set_var_double_unchecked( &mut self, fid: impl VarId, value: pbdouble, ) -> Result<()>
Sourcepub fn set_var_dec(&mut self, fid: impl VarId, value: Decimal) -> Result<()>
pub fn set_var_dec(&mut self, fid: impl VarId, value: Decimal) -> Result<()>
Sourcepub unsafe fn set_var_dec_unchecked(
&mut self,
fid: impl VarId,
value: Decimal,
) -> Result<()>
pub unsafe fn set_var_dec_unchecked( &mut self, fid: impl VarId, value: Decimal, ) -> Result<()>
Sourcepub fn set_var_str(
&mut self,
fid: impl VarId,
value: impl AsPBStr,
) -> Result<()>
pub fn set_var_str( &mut self, fid: impl VarId, value: impl AsPBStr, ) -> Result<()>
Sourcepub unsafe fn set_var_str_unchecked(
&mut self,
fid: impl VarId,
value: impl AsPBStr,
) -> Result<()>
pub unsafe fn set_var_str_unchecked( &mut self, fid: impl VarId, value: impl AsPBStr, ) -> Result<()>
Sourcepub fn set_var_bool(&mut self, fid: impl VarId, value: bool) -> Result<()>
pub fn set_var_bool(&mut self, fid: impl VarId, value: bool) -> Result<()>
Sourcepub unsafe fn set_var_bool_unchecked(
&mut self,
fid: impl VarId,
value: bool,
) -> Result<()>
pub unsafe fn set_var_bool_unchecked( &mut self, fid: impl VarId, value: bool, ) -> Result<()>
Sourcepub unsafe fn set_var_blob_unchecked(
&mut self,
fid: impl VarId,
value: impl AsRef<[u8]>,
) -> Result<()>
pub unsafe fn set_var_blob_unchecked( &mut self, fid: impl VarId, value: impl AsRef<[u8]>, ) -> Result<()>
Sourcepub fn set_var_date(&mut self, fid: impl VarId, value: NaiveDate) -> Result<()>
pub fn set_var_date(&mut self, fid: impl VarId, value: NaiveDate) -> Result<()>
Sourcepub unsafe fn set_var_date_unchecked(
&mut self,
fid: impl VarId,
value: NaiveDate,
) -> Result<()>
pub unsafe fn set_var_date_unchecked( &mut self, fid: impl VarId, value: NaiveDate, ) -> Result<()>
Sourcepub fn set_var_time(&mut self, fid: impl VarId, value: NaiveTime) -> Result<()>
pub fn set_var_time(&mut self, fid: impl VarId, value: NaiveTime) -> Result<()>
Sourcepub unsafe fn set_var_time_unchecked(
&mut self,
fid: impl VarId,
value: NaiveTime,
) -> Result<()>
pub unsafe fn set_var_time_unchecked( &mut self, fid: impl VarId, value: NaiveTime, ) -> Result<()>
Sourcepub fn set_var_datetime(
&mut self,
fid: impl VarId,
value: NaiveDateTime,
) -> Result<()>
pub fn set_var_datetime( &mut self, fid: impl VarId, value: NaiveDateTime, ) -> Result<()>
Sourcepub unsafe fn set_var_datetime_unchecked(
&mut self,
fid: impl VarId,
value: NaiveDateTime,
) -> Result<()>
pub unsafe fn set_var_datetime_unchecked( &mut self, fid: impl VarId, value: NaiveDateTime, ) -> Result<()>
Sourcepub fn set_var_char(&mut self, fid: impl VarId, value: WideChar) -> Result<()>
pub fn set_var_char(&mut self, fid: impl VarId, value: WideChar) -> Result<()>
Sourcepub unsafe fn set_var_char_unchecked(
&mut self,
fid: impl VarId,
value: WideChar,
) -> Result<()>
pub unsafe fn set_var_char_unchecked( &mut self, fid: impl VarId, value: WideChar, ) -> Result<()>
Sourcepub fn set_var_byte(&mut self, fid: impl VarId, value: pbbyte) -> Result<()>
pub fn set_var_byte(&mut self, fid: impl VarId, value: pbbyte) -> Result<()>
Sourcepub unsafe fn set_var_byte_unchecked(
&mut self,
fid: impl VarId,
value: pbbyte,
) -> Result<()>
pub unsafe fn set_var_byte_unchecked( &mut self, fid: impl VarId, value: pbbyte, ) -> Result<()>
Sourcepub fn set_var_object(
&mut self,
fid: impl VarId,
value: &Object<'_>,
) -> Result<()>
pub fn set_var_object( &mut self, fid: impl VarId, value: &Object<'_>, ) -> Result<()>
Sourcepub unsafe fn set_var_object_unchecked(
&mut self,
fid: impl VarId,
value: &Object<'_>,
) -> Result<()>
pub unsafe fn set_var_object_unchecked( &mut self, fid: impl VarId, value: &Object<'_>, ) -> Result<()>
Sourcepub fn set_var_array(
&mut self,
fid: impl VarId,
value: &Array<'_>,
) -> Result<()>
pub fn set_var_array( &mut self, fid: impl VarId, value: &Array<'_>, ) -> Result<()>
Sourcepub unsafe fn set_var_array_unchecked(
&mut self,
fid: impl VarId,
value: &Array<'_>,
) -> Result<()>
pub unsafe fn set_var_array_unchecked( &mut self, fid: impl VarId, value: &Array<'_>, ) -> Result<()>
获取共享(静态)变量ID
§Examples
let fid = object.get_shared_var_id("ss_var").unwrap();
object.set_shared_var_str(fid,"rust");
Sourcepub fn get_method_id(&self, name: impl AsMethodName) -> Option<MethodId>
pub fn get_method_id(&self, name: impl AsMethodName) -> Option<MethodId>
查找函数ID
§Examples
let fid = object.get_method_id("of_test").unwrap();
let invoker = object.begin_invoke_method(fid).unwrap();
invoker.invoke();
Sourcepub fn get_event_id(&self, name: impl AsMethodName) -> Option<MethodId>
pub fn get_event_id(&self, name: impl AsMethodName) -> Option<MethodId>
查找事件ID
§Examples
let fid = object.get_event_id("on_test").unwrap();
let invoker = object.begin_invoke_event(fid).unwrap();
invoker.trigger();
Sourcepub fn invoke_method<F, R>(
&mut self,
mid: impl AsMethodId,
arg_cb: F,
) -> Result<R>
pub fn invoke_method<F, R>( &mut self, mid: impl AsMethodId, arg_cb: F, ) -> Result<R>
Sourcepub fn trigger_event<F, R>(
&mut self,
mid: impl AsMethodId,
arg_cb: F,
) -> Result<R>
pub fn trigger_event<F, R>( &mut self, mid: impl AsMethodId, arg_cb: F, ) -> Result<R>
Sourcepub fn begin_invoke_method<'a>(
&'a mut self,
mid: impl AsMethodId,
) -> Result<Invoker<ObjectMethod<'a, 'obj>>>
pub fn begin_invoke_method<'a>( &'a mut self, mid: impl AsMethodId, ) -> Result<Invoker<ObjectMethod<'a, 'obj>>>
初始化函数调用上下文
§Examples
let invoker = object.begin_invoke_method("of_test").unwrap();
invoker.invoke();
Sourcepub fn begin_invoke_event<'a>(
&'a mut self,
mid: impl AsMethodId,
) -> Result<Invoker<ObjectEvent<'a, 'obj>>>
pub fn begin_invoke_event<'a>( &'a mut self, mid: impl AsMethodId, ) -> Result<Invoker<ObjectEvent<'a, 'obj>>>
初始化事件调用上下文
§Examples
let invoker = object.begin_invoke_event("on_test").unwrap();
invoker.trigger();
Trait Implementations§
Source§impl Deref for ContextObject
impl Deref for ContextObject
Auto Trait Implementations§
impl !Freeze for ContextObject
impl !RefUnwindSafe for ContextObject
impl !Send for ContextObject
impl !Sync for ContextObject
impl Unpin for ContextObject
impl UnwindSafe for ContextObject
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more