Skip to main content

Crate macho_objc

Crate macho_objc 

Source
Expand description

Objective-C runtime metadata parsing.

Depend on this crate directly for ObjC metadata without the macho façade: parse a macho_core::MachoFile with parse_objc_metadata or borrow a raw byte source with parse_objc_metadata_from_source.

Re-exports§

pub use error::ObjcError;
pub use error::ObjcErrorKind;
pub use error::Result;
pub use imp::ObjCMethodImp;
pub use imp::ObjCMethodKind;
pub use imp::ObjCMethodRecord;
pub use imp::ObjCMethodRecordEncoding;
pub use imp::ObjCMethodRecordProvenance;
pub use imp::ObjCRelativeSelectorEncoding;
pub use imp::fold_method_imps;
pub use imp::fold_method_imps_from_source;
pub use imp::fold_method_records;
pub use imp::fold_method_records_from_source;
pub use resolve::ObjCPointerProvenance;
pub use types::ObjCCategory;
pub use types::ObjCClass;
pub use types::ObjCIvar;
pub use types::ObjCMethod;
pub use types::ObjCProperty;
pub use types::ObjCProtocol;

Modules§

category
The category module.
class
The class module.
compat
Objective-C method signature compatibility comparison.
encoding
The encoding module.
error
The error module.
format
The format module.
imp
Bounded Objective-C method-implementation traversal.
ivar
The ivar module.
method
The method module.
model
The model module.
property
The property module.
protocol
The protocol module.
resolve
The resolve module.
types
The types module.

Structs§

ObjCMetadata
Parsed ObjC metadata from a Mach-O binary.
ObjCMetadataScan
Parsed metadata plus a conservation ledger for every runtime-list entry.
ObjCRecordObservation
Lossless accounting for one runtime-list entry.

Enums§

ObjCRecordKind
Runtime-list source for one Objective-C metadata observation.

Functions§

parse_objc_metadata
Performs parse_objc_metadata.
parse_objc_metadata_from_source
Parse Objective-C metadata from one borrowed thin Mach-O byte source.
scan_objc_metadata
Scans Objective-C runtime lists without silently dropping malformed records.
scan_objc_metadata_from_source
Scan Objective-C metadata from one borrowed thin Mach-O byte source.