Struct binaryninja::binaryview::BinaryView
[−]pub struct BinaryView { /* private fields */ }
Implementations
impl BinaryView
impl BinaryView
pub fn from_filename<S: BnStrCompatible>(
meta: &mut FileMetadata,
filename: S
) -> Result<Ref<Self>>
pub fn from_accessor(
meta: &FileMetadata,
file: &mut FileAccessor<'_>
) -> Result<Ref<Self>>
pub fn from_data(meta: &FileMetadata, data: &[u8]) -> Result<Ref<Self>>
Trait Implementations
impl AsRef<BinaryView> for BinaryView
impl AsRef<BinaryView> for BinaryView
impl BinaryViewBase for BinaryView
impl BinaryViewBase for BinaryView
fn read(&self, buf: &mut [u8], offset: u64) -> usize
fn write(&self, offset: u64, data: &[u8]) -> usize
fn insert(&self, offset: u64, data: &[u8]) -> usize
fn remove(&self, offset: u64, len: usize) -> usize
fn modification_status(&self, offset: u64) -> ModificationStatus
fn offset_valid(&self, offset: u64) -> bool
fn offset_readable(&self, offset: u64) -> bool
fn offset_writable(&self, offset: u64) -> bool
fn offset_executable(&self, offset: u64) -> bool
fn offset_backed_by_file(&self, offset: u64) -> bool
fn next_valid_offset_after(&self, offset: u64) -> u64
fn default_endianness(&self) -> Endianness
fn relocatable(&self) -> bool
fn address_size(&self) -> usize
fn start(&self) -> u64
fn len(&self) -> usize
fn entry_point(&self) -> u64
fn executable(&self) -> bool
fn save(&self) -> bool
impl Hash for BinaryView
impl Hash for BinaryView
impl PartialEq<BinaryView> for BinaryView
impl PartialEq<BinaryView> for BinaryView
fn eq(&self, other: &BinaryView) -> bool
fn eq(&self, other: &BinaryView) -> bool
impl RefCountable for BinaryView
impl RefCountable for BinaryView
impl ToOwned for BinaryView
impl ToOwned for BinaryView
type Owned = Ref<BinaryView>
type Owned = Ref<BinaryView>
The resulting type after obtaining ownership.
fn to_owned(&self) -> Self::Owned
fn to_owned(&self) -> Self::Owned
Creates owned data from borrowed data, usually by cloning. Read more
1.63.0 · sourcefn clone_into(&self, target: &mut Self::Owned)
fn clone_into(&self, target: &mut Self::Owned)
Uses borrowed data to replace owned data, usually by cloning. Read more
impl Eq for BinaryView
impl Send for BinaryView
impl StructuralEq for BinaryView
impl StructuralPartialEq for BinaryView
impl Sync for BinaryView
Auto Trait Implementations
Blanket Implementations
impl<T> BinaryViewExt for Twhere
T: BinaryViewBase,
impl<T> BinaryViewExt for Twhere
T: BinaryViewBase,
fn file(&self) -> Ref<FileMetadata>
fn type_name(&self) -> BnString
fn parent_view(&self) -> Result<Ref<BinaryView>>
fn read_into_vec(&self, dest: &mut Vec<u8>, offset: u64, len: usize) -> usize
fn read_into_vec(&self, dest: &mut Vec<u8>, offset: u64, len: usize) -> usize
Appends up to
len
bytes from address offset
into dest
fn notify_data_written(&self, offset: u64, len: usize)
fn notify_data_inserted(&self, offset: u64, len: usize)
fn notify_data_removed(&self, offset: u64, len: usize)
fn offset_has_code_semantics(&self, offset: u64) -> bool
fn offset_has_writable_semantics(&self, offset: u64) -> bool
fn end(&self) -> u64
fn update_analysis_and_wait(&self)
fn update_analysis(&self)
fn default_arch(&self) -> Option<CoreArchitecture>
fn set_default_arch<A: Architecture>(&self, arch: &A)
fn default_platform(&self) -> Option<Ref<Platform>>
fn set_default_platform(&self, plat: &Platform)
fn instruction_len<A: Architecture>(&self, arch: &A, addr: u64) -> Option<usize>
fn symbol_by_address(&self, addr: u64) -> Result<Ref<Symbol>>
fn symbol_by_raw_name<S: BnStrCompatible>(
&self,
raw_name: S
) -> Result<Ref<Symbol>>
fn symbols(&self) -> Array<Symbol>
fn symbols_by_name<S: BnStrCompatible>(&self, name: S) -> Array<Symbol>
fn symbols_in_range(&self, range: Range<u64>) -> Array<Symbol>
fn symbols_of_type(&self, ty: SymbolType) -> Array<Symbol>
fn symbols_of_type_in_range(
&self,
ty: SymbolType,
range: Range<u64>
) -> Array<Symbol>
fn define_auto_symbol(&self, sym: &Symbol)
fn define_auto_symbol_with_type<'a, T: Into<Option<&'a Type>>>(
&self,
sym: &Symbol,
plat: &Platform,
ty: T
) -> Result<Ref<Symbol>>
fn undefine_auto_symbol(&self, sym: &Symbol)
fn define_user_symbol(&self, sym: &Symbol)
fn undefine_user_symbol(&self, sym: &Symbol)
fn data_variables(&self) -> Array<DataVariable>
fn define_user_type<S: BnStrCompatible>(&self, name: S, type_obj: &Type)
fn types(&self) -> Array<QualifiedNameAndType>
fn dependency_sorted_types(&self) -> Array<QualifiedNameAndType>
fn get_type_by_name<S: BnStrCompatible>(&self, name: S) -> Option<Ref<Type>>
fn get_type_by_ref(&self, ref_: &NamedTypeReference) -> Option<Ref<Type>>
fn get_type_by_id<S: BnStrCompatible>(&self, id: S) -> Option<Ref<Type>>
fn get_type_name_by_id<S: BnStrCompatible>(&self, id: S) -> Option<QualifiedName>
fn get_type_id<S: BnStrCompatible>(&self, name: S) -> Option<BnString>
fn is_type_auto_defined<S: BnStrCompatible>(&self, name: S) -> bool
fn segments(&self) -> Array<Segment>
fn segment_at(&self, addr: u64) -> Option<Segment>
fn add_segment(&self, segment: SegmentBuilder)
fn add_section<S: BnStrCompatible>(&self, section: SectionBuilder<S>)
fn remove_auto_section<S: BnStrCompatible>(&self, name: S)
fn remove_user_section<S: BnStrCompatible>(&self, name: S)
fn section_by_name<S: BnStrCompatible>(&self, name: S) -> Result<Section>
fn sections(&self) -> Array<Section>
fn sections_at(&self, addr: u64) -> Array<Section>
fn add_auto_function(&self, plat: &Platform, addr: u64)
fn add_entry_point(&self, plat: &Platform, addr: u64)
fn create_user_function(&self, plat: &Platform, addr: u64)
fn has_functions(&self) -> bool
fn entry_point_function(&self) -> Result<Ref<Function>>
fn functions(&self) -> Array<Function>
fn functions_at(&self, addr: u64) -> Array<Function>
fn functions_at(&self, addr: u64) -> Array<Function>
List of functions starting at
addr
fn function_at(&self, platform: &Platform, addr: u64) -> Result<Ref<Function>>
fn basic_blocks_containing(&self, addr: u64) -> Array<BasicBlock<NativeBlock>>
fn basic_blocks_starting_at(&self, addr: u64) -> Array<BasicBlock<NativeBlock>>
fn is_new_auto_function_analysis_suppressed(&self) -> bool
fn set_new_auto_function_analysis_suppressed(&self, suppress: bool)
fn read_buffer(&self, offset: u64, len: usize) -> Result<DataBuffer>
fn debug_info(&self) -> Ref<DebugInfo>
fn set_debug_info(&self, debug_info: &DebugInfo)
fn apply_debug_info(&self, debug_info: &DebugInfo)
fn show_graph_report<S: BnStrCompatible>(&self, raw_name: S, graph: FlowGraph)
fn load_settings<S: BnStrCompatible>(
&self,
view_type_name: S
) -> Result<Ref<Settings>>
fn set_load_settings<S: BnStrCompatible>(
&self,
view_type_name: S,
settings: &Settings
)
fn create_tag_type<N: BnStrCompatible, I: BnStrCompatible>(
&self,
name: N,
icon: I
) -> Ref<TagType>
fn create_tag_type<N: BnStrCompatible, I: BnStrCompatible>(
&self,
name: N,
icon: I
) -> Ref<TagType>
fn remove_tag_type(&self, tag_type: &TagType)
fn remove_tag_type(&self, tag_type: &TagType)
Removes a TagType and all tags that use it
fn get_tag_type<S: BnStrCompatible>(&self, name: S) -> Option<Ref<TagType>>
fn get_tag_type<S: BnStrCompatible>(&self, name: S) -> Option<Ref<TagType>>
Get a tag type by its name. Read more
fn get_tag_type_by_name<S: BnStrCompatible>(
&self,
name: S
) -> Option<Ref<TagType>>
fn get_tag_type_by_name<S: BnStrCompatible>(
&self,
name: S
) -> Option<Ref<TagType>>
Get a tag type by its name
fn get_tag_type_by_id<S: BnStrCompatible>(&self, id: S) -> Option<Ref<TagType>>
fn get_tag_type_by_id<S: BnStrCompatible>(&self, id: S) -> Option<Ref<TagType>>
Get a tag type by its id
fn create_tag<S: BnStrCompatible>(
&self,
t: &TagType,
data: S,
user: bool
) -> Ref<Tag>
fn create_user_tag<S: BnStrCompatible>(&self, t: &TagType, data: S) -> Ref<Tag>
fn create_auto_tag<S: BnStrCompatible>(&self, t: &TagType, data: S) -> Ref<Tag>
fn add_user_data_tag(&self, addr: u64, tag: &Tag)
fn add_user_data_tag(&self, addr: u64, tag: &Tag)
adds an already-created Tag object at a data address. Read more
fn add_auto_data_tag(&self, addr: u64, tag: &Tag)
fn add_auto_data_tag(&self, addr: u64, tag: &Tag)
adds an already-created Tag object at a data address.
fn remove_auto_data_tag(&self, addr: u64, tag: &Tag)
fn remove_auto_data_tag(&self, addr: u64, tag: &Tag)
removes a Tag object at a data address.
fn remove_user_data_tag(&self, addr: u64, tag: &Tag)
fn remove_user_data_tag(&self, addr: u64, tag: &Tag)
removes a Tag object at a data address.
Since this removes a user tag, it will be added to the current undo buffer. Read more
fn get_next_linear_disassembly_lines(
&self,
pos: &mut LinearViewCursor
) -> Array<LinearDisassemblyLine>
fn get_next_linear_disassembly_lines(
&self,
pos: &mut LinearViewCursor
) -> Array<LinearDisassemblyLine>
Retrieves a list of the next disassembly lines. Read more
fn get_previous_linear_disassembly_lines(
&self,
pos: &mut LinearViewCursor
) -> Array<LinearDisassemblyLine>
fn get_previous_linear_disassembly_lines(
&self,
pos: &mut LinearViewCursor
) -> Array<LinearDisassemblyLine>
Retrieves a list of the previous disassembly lines. Read more
fn query_metadata<S: BnStrCompatible>(&self, key: S) -> Option<Ref<Metadata>>
fn get_metadata<T, S: BnStrCompatible>(&self, key: S) -> Option<Result<T>>where
T: for<'a> TryFrom<&'a Metadata>,
fn store_metadata<V, S: BnStrCompatible>(&self, key: S, value: V, is_auto: bool)where
V: Into<Ref<Metadata>>,
fn remove_metadata<S: BnStrCompatible>(&self, key: S)
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more