pub struct Reader<'a> { /* private fields */ }

Implementations§

source§

impl<'a> Reader<'a>

source

pub fn new(files: &'a [File]) -> Self

source

pub fn namespaces(&self) -> impl Iterator<Item = &str> + '_

source

pub fn items( &'a self, filter: &'a Filter<'_> ) -> impl Iterator<Item = Item> + '_

source

pub fn namespace_items( &'a self, namespace: &str, filter: &'a Filter<'_> ) -> impl Iterator<Item = Item> + '_

source

pub fn get_type_def( &self, type_name: TypeName<'_> ) -> impl Iterator<Item = TypeDef> + '_

source

pub fn get_method_def( &self, type_name: TypeName<'_> ) -> impl Iterator<Item = (MethodDef, String)> + '_

source

pub fn nested_types( &self, type_def: TypeDef ) -> impl Iterator<Item = TypeDef> + '_

source

pub fn attribute_args(&self, row: Attribute) -> Vec<(String, Value)>

source

pub fn field_type(&self, row: Field, enclosing: Option<TypeDef>) -> Type

source

pub fn interface_impl_type(&self, row: InterfaceImpl, generics: &[Type]) -> Type

source

pub fn method_def_signature( &self, method: MethodDef, generics: &[Type] ) -> MethodDefSig

source

pub fn method_def_size(&self, method: MethodDef) -> usize

source

pub fn type_def_type_name(&self, row: TypeDef) -> TypeName<'_>

source

pub fn type_def_underlying_type(&self, row: TypeDef) -> Type

source

pub fn type_def_kind(&self, row: TypeDef) -> TypeKind

source

pub fn type_def_size(&self, def: TypeDef) -> usize

source

pub fn type_size(&self, ty: &Type) -> usize

source

pub fn type_def_or_ref(&self, code: TypeDefOrRef) -> TypeName<'_>

source

pub fn type_from_blob( &self, blob: &mut Blob<'_>, enclosing: Option<TypeDef>, generics: &[Type] ) -> Type

Trait Implementations§

source§

impl<'a> RowReader<'a> for Reader<'a>

source§

fn row_file<R: AsRow>(&self, row: R) -> &'a File

source§

fn row_usize<R: AsRow>(&self, row: R, column: usize) -> usize

source§

fn row_str<R: AsRow>(&self, row: R, column: usize) -> &'a str

source§

fn row_blob<R: AsRow>(&self, row: R, column: usize) -> Blob<'a>

source§

fn row_list<R: AsRow, L: AsRow>(&self, row: R, column: usize) -> RowIterator<L>

source§

fn row_equal_range<R: AsRow, L: AsRow>( &self, row: R, column: usize, value: usize ) -> RowIterator<L>

source§

fn row_decode<R: AsRow, T: Decode>(&self, row: R, column: usize) -> T

source§

fn attribute_name(&self, row: Attribute) -> &'a str

source§

fn attributes<R: AsRow + Into<HasAttribute>>( &self, row: R ) -> RowIterator<Attribute>

source§

fn find_attribute<R: AsRow + Into<HasAttribute>>( &self, row: R, name: &str ) -> Option<Attribute>

source§

fn has_attribute<R: AsRow + Into<HasAttribute>>( &self, row: R, name: &str ) -> bool

source§

fn type_def_or_ref(&self, code: TypeDefOrRef) -> TypeName<'a>

source§

fn class_layout_packing_size(&self, row: ClassLayout) -> usize

source§

fn constant_type(&self, row: Constant) -> Type

source§

fn constant_value(&self, row: Constant) -> Value

source§

fn field_flags(&self, row: Field) -> FieldAttributes

source§

fn field_name(&self, row: Field) -> &'a str

source§

fn field_constant(&self, row: Field) -> Option<Constant>

source§

fn generic_param_number(&self, row: GenericParam) -> u16

source§

fn generic_param_name(&self, row: GenericParam) -> &'a str

source§

fn impl_map_flags(&self, row: ImplMap) -> PInvokeAttributes

source§

fn impl_map_scope(&self, row: ImplMap) -> ModuleRef

source§

fn impl_map_import_name(&self, row: ImplMap) -> &'a str

source§

fn member_ref_parent(&self, row: MemberRef) -> MemberRefParent

source§

fn member_ref_signature(&self, row: MemberRef) -> Blob<'a>

source§

fn method_def_impl_flags(&self, row: MethodDef) -> MethodImplAttributes

source§

fn method_def_flags(&self, row: MethodDef) -> MethodAttributes

source§

fn method_def_name(&self, row: MethodDef) -> &'a str

source§

fn method_def_params(&self, row: MethodDef) -> RowIterator<Param>

source§

fn method_def_impl_map(&self, row: MethodDef) -> Option<ImplMap>

source§

fn method_def_module_name(&self, row: MethodDef) -> String

source§

fn module_ref_name(&self, row: ModuleRef) -> &'a str

source§

fn nested_class_inner(&self, row: NestedClass) -> TypeDef

source§

fn nested_class_outer(&self, row: NestedClass) -> TypeDef

source§

fn param_flags(&self, row: Param) -> ParamAttributes

source§

fn param_sequence(&self, row: Param) -> u16

source§

fn param_name(&self, row: Param) -> &'a str

source§

fn type_def_flags(&self, row: TypeDef) -> TypeAttributes

source§

fn type_def_name(&self, row: TypeDef) -> &'a str

source§

fn type_def_namespace(&self, row: TypeDef) -> &'a str

source§

fn type_def_extends(&self, row: TypeDef) -> Option<TypeName<'a>>

source§

fn type_def_methods(&self, row: TypeDef) -> RowIterator<MethodDef>

source§

fn type_def_fields(&self, row: TypeDef) -> RowIterator<Field>

source§

fn type_def_generics(&self, row: TypeDef) -> RowIterator<GenericParam>

source§

fn type_def_interface_impls(&self, row: TypeDef) -> RowIterator<InterfaceImpl>

source§

fn type_def_enclosing_type(&self, row: TypeDef) -> Option<TypeDef>

source§

fn type_def_class_layout(&self, row: TypeDef) -> Option<ClassLayout>

source§

fn type_ref_name(&self, row: TypeRef) -> &'a str

source§

fn type_ref_namespace(&self, row: TypeRef) -> &'a str

source§

fn type_ref_resolution_scope(&self, row: TypeRef) -> ResolutionScope

source§

fn type_spec_signature(&self, row: TypeSpec) -> Blob<'a>

Auto Trait Implementations§

§

impl<'a> RefUnwindSafe for Reader<'a>

§

impl<'a> Send for Reader<'a>

§

impl<'a> Sync for Reader<'a>

§

impl<'a> Unpin for Reader<'a>

§

impl<'a> UnwindSafe for Reader<'a>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. 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 Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.