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 moresource§impl Debug for MangledName
impl Debug for MangledName
source§impl PartialEq for MangledName
impl PartialEq for MangledName
source§fn eq(&self, other: &MangledName) -> bool
fn eq(&self, other: &MangledName) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for MangledName
impl StructuralPartialEq for MangledName
Auto Trait Implementations§
impl Freeze for MangledName
impl RefUnwindSafe for MangledName
impl Send for MangledName
impl Sync for MangledName
impl Unpin for MangledName
impl UnwindSafe for MangledName
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)