More runtime type reflection
ReprVisitor
of EscapedCharWriter for @Writer
of Repr for ()
of Repr for bool
of Repr for int
of Repr for i8
of Repr for i16
of Repr for i32
of Repr for i64
of Repr for uint
of Repr for u8
of Repr for u16
of Repr for u32
of Repr for u64
of Repr for float
of Repr for f32
of Repr for f64
of MovePtr for ReprVisitor
for ReprVisitor
of TyVisitor for ReprVisitor
ReprVisitor
write_repr
ReprVisitor
pub struct ReprVisitor {
ptr: @mut *c_void,
ptr_stk: @mut ~[*c_void],
var_stk: @mut ~[VariantState],
writer: @Writer,
}
EscapedCharWriter
for @Writer
write_escaped_char
fn write_escaped_char(&self, ch: char)
Repr
for ()
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for bool
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for int
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for i8
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for i16
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for i32
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for i64
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for uint
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for u8
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for u16
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for u32
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for u64
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for float
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for f32
write_repr
fn write_repr(&self, writer: @Writer)
Repr
for f64
write_repr
fn write_repr(&self, writer: @Writer)
MovePtr
for ReprVisitor
move_ptr
fn move_ptr(&self, adjustment: &fn(*c_void) -> *c_void)
push_ptr
fn push_ptr(&self)
pop_ptr
fn pop_ptr(&self)
ReprVisitor
get
fn get<T>(&self, f: &fn(&T)) -> bool
visit_inner
fn visit_inner(&self, inner: *TyDesc) -> bool
visit_ptr_inner
fn visit_ptr_inner(&self, ptr: *c_void, inner: *TyDesc) -> bool
write
fn write<T: Repr>(&self) -> bool
write_escaped_slice
fn write_escaped_slice(&self, slice: &str)
write_mut_qualifier
fn write_mut_qualifier(&self, mtbl: uint)
write_vec_range
fn write_vec_range(&self, mtbl: uint, ptr: *u8, len: uint, inner: *TyDesc) ->
bool
write_unboxed_vec_repr
fn write_unboxed_vec_repr(&self, mtbl: uint, v: &UnboxedVecRepr,
inner: *TyDesc) -> bool
TyVisitor
for ReprVisitor
visit_bot
fn visit_bot(&self) -> bool
visit_nil
fn visit_nil(&self) -> bool
visit_bool
fn visit_bool(&self) -> bool
visit_int
fn visit_int(&self) -> bool
visit_i8
fn visit_i8(&self) -> bool
visit_i16
fn visit_i16(&self) -> bool
visit_i32
fn visit_i32(&self) -> bool
visit_i64
fn visit_i64(&self) -> bool
visit_uint
fn visit_uint(&self) -> bool
visit_u8
fn visit_u8(&self) -> bool
visit_u16
fn visit_u16(&self) -> bool
visit_u32
fn visit_u32(&self) -> bool
visit_u64
fn visit_u64(&self) -> bool
visit_float
fn visit_float(&self) -> bool
visit_f32
fn visit_f32(&self) -> bool
visit_f64
fn visit_f64(&self) -> bool
visit_char
fn visit_char(&self) -> bool
visit_str
fn visit_str(&self) -> bool
visit_estr_box
fn visit_estr_box(&self) -> bool
visit_estr_uniq
fn visit_estr_uniq(&self) -> bool
visit_estr_slice
fn visit_estr_slice(&self) -> bool
visit_estr_fixed
fn visit_estr_fixed(&self, _n: uint, _sz: uint, _align: uint) -> bool
visit_box
fn visit_box(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_uniq
fn visit_uniq(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_ptr
fn visit_ptr(&self, _mtbl: uint, _inner: *TyDesc) -> bool
visit_rptr
fn visit_rptr(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_vec
fn visit_vec(&self, _mtbl: uint, _inner: *TyDesc) -> bool
visit_unboxed_vec
fn visit_unboxed_vec(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_evec_box
fn visit_evec_box(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_evec_uniq
fn visit_evec_uniq(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_evec_slice
fn visit_evec_slice(&self, mtbl: uint, inner: *TyDesc) -> bool
visit_evec_fixed
fn visit_evec_fixed(&self, _n: uint, sz: uint, _align: uint, mtbl: uint,
inner: *TyDesc) -> bool
visit_enter_rec
fn visit_enter_rec(&self, _n_fields: uint, _sz: uint, _align: uint) -> bool
visit_rec_field
fn visit_rec_field(&self, i: uint, name: &str, mtbl: uint, inner: *TyDesc) ->
bool
visit_leave_rec
fn visit_leave_rec(&self, _n_fields: uint, _sz: uint, _align: uint) -> bool
visit_enter_class
fn visit_enter_class(&self, _n_fields: uint, _sz: uint, _align: uint) -> bool
visit_class_field
fn visit_class_field(&self, i: uint, name: &str, mtbl: uint, inner: *TyDesc)
-> bool
visit_leave_class
fn visit_leave_class(&self, _n_fields: uint, _sz: uint, _align: uint) -> bool
visit_enter_tup
fn visit_enter_tup(&self, _n_fields: uint, _sz: uint, _align: uint) -> bool
visit_tup_field
fn visit_tup_field(&self, i: uint, inner: *TyDesc) -> bool
visit_leave_tup
fn visit_leave_tup(&self, _n_fields: uint, _sz: uint, _align: uint) -> bool
visit_enter_enum
fn visit_enter_enum(&self, _n_variants: uint,
get_disr: extern "Rust" unsafe fn(ptr: *Opaque) -> int,
_sz: uint, _align: uint) -> bool
visit_enter_enum_variant
fn visit_enter_enum_variant(&self, _variant: uint, disr_val: int,
n_fields: uint, name: &str) -> bool
visit_enum_variant_field
fn visit_enum_variant_field(&self, i: uint, _offset: uint, inner: *TyDesc) ->
bool
visit_leave_enum_variant
fn visit_leave_enum_variant(&self, _variant: uint, _disr_val: int,
n_fields: uint, _name: &str) -> bool
visit_leave_enum
fn visit_leave_enum(&self, _n_variants: uint,
_get_disr: extern "Rust" unsafe fn(ptr: *Opaque) -> int,
_sz: uint, _align: uint) -> bool
visit_enter_fn
fn visit_enter_fn(&self, _purity: uint, _proto: uint, _n_inputs: uint,
_retstyle: uint) -> bool
visit_fn_input
fn visit_fn_input(&self, _i: uint, _mode: uint, _inner: *TyDesc) -> bool
visit_fn_output
fn visit_fn_output(&self, _retstyle: uint, _inner: *TyDesc) -> bool
visit_leave_fn
fn visit_leave_fn(&self, _purity: uint, _proto: uint, _n_inputs: uint,
_retstyle: uint) -> bool
visit_trait
fn visit_trait(&self) -> bool
visit_var
fn visit_var(&self) -> bool
visit_var_integral
fn visit_var_integral(&self) -> bool
visit_param
fn visit_param(&self, _i: uint) -> bool
visit_self
fn visit_self(&self) -> bool
visit_type
fn visit_type(&self) -> bool
visit_opaque_box
fn visit_opaque_box(&self) -> bool
visit_constr
fn visit_constr(&self, _inner: *TyDesc) -> bool
visit_closure_ptr
fn visit_closure_ptr(&self, _ck: uint) -> bool
ReprVisitor
fn ReprVisitor(ptr: *c_void, writer: @Writer) -> ReprVisitor
write_repr
fn write_repr<T>(writer: @Writer, object: &T)