Skip to main content

NameResolver

Trait NameResolver 

Source
pub trait NameResolver {
    // Required methods
    fn class(&self, descriptor: &str) -> Option<&str>;
    fn field(&self, signature: &str) -> Option<&str>;
    fn method(&self, signature: &str) -> Option<&str>;
}
Expand description

Resolves the names decompiled source shows, in process (the embedded decompiler) or behind a protocol (external backends get NameMappings as JSON). Keys are the names in the DEX (Lz/c;, Lz/c;->a(I)V); None keeps the name the program has.

Required Methods§

Source

fn class(&self, descriptor: &str) -> Option<&str>

The full new descriptor of the class descriptor: Lz/c; → Lcom/example/Cart;. The package may differ from the DEX’s; for a nested class the value is the whole binary name (…/Cart$Line;).

Source

fn field(&self, signature: &str) -> Option<&str>

The new name of the field Lowner;->name:Type.

Source

fn method(&self, signature: &str) -> Option<&str>

The new name of the method Lowner;->name(args)Ret.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§