Enum cpp_demangle::ast::MangledName
source · pub enum MangledName {
Encoding(Encoding, Vec<CloneSuffix>),
BlockInvoke(Encoding, Option<isize>),
Type(TypeHandle),
GlobalCtorDtor(GlobalCtorDtor),
}
Expand description
The root AST node, and starting production.
<mangled-name> ::= _Z <encoding> [<clone-suffix>]*
::= ___Z <encoding> <block_invoke>
::= <type>
<block_invoke> ::= _block_invoke
::= _block_invoke<decimal-digit>+
::= _block_invoke_<decimal-digit>+
Variants§
Encoding(Encoding, Vec<CloneSuffix>)
The encoding of the mangled symbol name.
BlockInvoke(Encoding, Option<isize>)
The encoding of the mangled symbol name.
Type(TypeHandle)
A top-level type. Technically not allowed by the standard, however in practice this can happen, and is tested for by libiberty.
GlobalCtorDtor(GlobalCtorDtor)
A global constructor or destructor. This is another de facto standard
extension (I think originally from g++
?) that is not actually part of
the standard proper.
Trait Implementations§
source§impl Clone for MangledName
impl Clone for MangledName
source§fn clone(&self) -> MangledName
fn clone(&self) -> MangledName
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more