#[non_exhaustive]pub struct Decompiler {
pub command: Option<PathBuf>,
pub args: Vec<String>,
pub env: BTreeMap<String, String>,
pub cwd: Option<PathBuf>,
pub instances: usize,
pub max_concurrency: Option<u32>,
pub idle: Duration,
pub timeout: Duration,
pub startup_timeout: Duration,
pub inputs: Vec<String>,
pub options: Map<String, Value>,
pub enabled: bool,
}Expand description
One [decompilers.<name>] table. Defaults follow §4.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.command: Option<PathBuf>command: the executable; looked up on PATH when it has no /.
Only the built-in backends (BUILT_IN_DECOMPILERS) may leave it
out, to change their other keys and keep the worker asc finds
(asc-dexdec-worker, asc-arkdec-worker).
args: Vec<String>args.
env: BTreeMap<String, String>env: added to the inherited environment.
cwd: Option<PathBuf>cwd; None: decompilers/<name>/ in the cache directory.
instances: usizeinstances: processes in the pool, at least 1.
max_concurrency: Option<u32>max_concurrency: caps the requests one process takes at once
(the backend declares its own limit); None: as declared.
idle: Durationidle: a process idle this long exits.
timeout: Durationtimeout: deadline of one request.
startup_timeout: Durationstartup_timeout: deadline of the initialize handshake.
inputs: Vec<String>inputs: the input kinds asc may hand the backend (archive,
slice, abc); empty: whatever it declares.
options: Map<String, Value>options: passed through to initialize uninterpreted.
enabled: boolenabled: false keeps the table but never starts the backend.
Implementations§
Source§impl Decompiler
impl Decompiler
Sourcepub fn new(command: impl Into<PathBuf>) -> Decompiler
pub fn new(command: impl Into<PathBuf>) -> Decompiler
A backend run as command with every other key at its default.