Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
ABI.Itanium
Contents
Synopsis
- data DecodedName
- data CVQualifier
- data CXXType
- = QualifiedType [CVQualifier] CXXType
- | PointerToType CXXType
- | ReferenceToType CXXType
- | RValueReferenceToType CXXType
- | ComplexPairType CXXType
- | ImaginaryType CXXType
- | ParameterPack CXXType
- | VendorTypeQualifier String CXXType
- | VoidType
- | Wchar_tType
- | BoolType
- | CharType
- | SignedCharType
- | UnsignedCharType
- | ShortType
- | UnsignedShortType
- | IntType
- | UnsignedIntType
- | LongType
- | UnsignedLongType
- | LongLongType
- | UnsignedLongLongType
- | Int128Type
- | UnsignedInt128Type
- | FloatType
- | DoubleType
- | LongDoubleType
- | Float128Type
- | EllipsisType
- | Char32Type
- | Char16Type
- | AutoType
- | NullPtrType
- | VendorBuiltinType String
- | FunctionType [CXXType]
- | ExternCFunctionType [CXXType]
- | ArrayTypeN (Maybe Int) CXXType
- | ArrayTypeE Expression
- | PtrToMemberType CXXType CXXType
- | ClassEnumType Name
- | SubstitutionType Substitution
- | TemplateParamType TemplateParam
- | TemplateTemplateParamType TemplateParam [TemplateArg]
- | TemplateTemplateParamSubstitutionType Substitution [TemplateArg]
- data Name
- = NestedName [CVQualifier] [Prefix] UnqualifiedName
- | NestedTemplateName [CVQualifier] [Prefix] [TemplateArg]
- | UnscopedName UName
- | UnscopedTemplateName UName [TemplateArg]
- | UnscopedTemplateSubstitution Substitution [TemplateArg]
- data Prefix
- = DataMemberPrefix String
- | UnqualifiedPrefix UnqualifiedName
- | SubstitutionPrefix Substitution
- | TemplateParamPrefix TemplateParam
- | TemplateArgsPrefix [TemplateArg]
- data UnqualifiedName
- = OperatorName Operator
- | CtorDtorName CtorDtor
- | SourceName String
- data CtorDtor
- data Operator
- = OpNew
- | OpNewArray
- | OpDelete
- | OpDeleteArray
- | OpUPlus
- | OpUMinus
- | OpAddressOf
- | OpDeref
- | OpBitNot
- | OpPlus
- | OpMinus
- | OpMul
- | OpDiv
- | OpMod
- | OpBitAnd
- | OpBitOr
- | OpBitXor
- | OpAssign
- | OpPlusAssign
- | OpMinusAssign
- | OpMulAssign
- | OpDivAssign
- | OpModAssign
- | OpAndAssign
- | OpOrAssign
- | OpXorAssign
- | OpShl
- | OpShr
- | OpShlAssign
- | OpShrAssign
- | OpEquals
- | OpNotEquals
- | OpLt
- | OpGt
- | OpLte
- | OpGte
- | OpNot
- | OpAnd
- | OpOr
- | OpPlusPlus
- | OpMinusMinus
- | OpComma
- | OpArrowStar
- | OpArrow
- | OpCall
- | OpIndex
- | OpQuestion
- | OpSizeofType
- | OpSizeofExpr
- | OpAlignofType
- | OpAlignofExpr
- | OpCast CXXType
- | OpVendor Int String
- data Expression = Expression
- data CallOffset
- = VirtualOffset Int Int
- | NonVirtualOffset Int
- data Substitution
- = Substitution (Maybe String)
- | SubStdNamespace
- | SubStdAllocator
- | SubBasicString
- | SubBasicStringArgs
- | SubBasicIstream
- | SubBasicOstream
- | SubBasicIostream
- data UName
- demangleName :: String -> Either String DecodedName
- mangleName :: DecodedName -> Maybe String
- cxxNameToString :: (Monad m, MonadThrow m) => DecodedName -> m String
- cxxNameToText :: (Monad m, MonadThrow m) => DecodedName -> m Text
- rUnqualifiedPrefix :: forall tok e r. Boomerang e tok ((:-) UnqualifiedName r) ((:-) Prefix r)
- rConst :: forall tok e r. Boomerang e tok r ((:-) CVQualifier r)
- rSourceName :: forall tok e r. Boomerang e tok ((:-) String r) ((:-) UnqualifiedName r)
- rUName :: forall tok e r. Boomerang e tok ((:-) UnqualifiedName r) ((:-) UName r)
- rNestedName :: forall tok e r. Boomerang e tok ((:-) [CVQualifier] ((:-) [Prefix] ((:-) UnqualifiedName r))) ((:-) Name r)
- rUnscopedName :: forall tok e r. Boomerang e tok ((:-) UName r) ((:-) Name r)
Documentation
data DecodedName Source #
Constructors
Function Name [CXXType] | |
Data Name | |
VirtualTable CXXType | |
VTTStructure CXXType | |
TypeInfo CXXType | |
TypeInfoName CXXType | |
GuardVariable Name | |
OverrideThunk CallOffset DecodedName | |
OverrideThunkCovariant CallOffset CallOffset DecodedName | |
ConstStructData UnqualifiedName | Const data that is not a builtin data type (as a special-name). This construct is not specifically identified in the documentation, but for the following input: struct mystr { int val; }; const struct mystr here = { 9 }; Also works with: class mycls { public: int val; } const class mycls here = { 8 }; When compiled with Clang/LLVM results in Global Variable (apparently always using the length-specified source-name syntax): _ZL4here This is apparently only used for const declarations and only for non-builtin datatypes. |
Instances
Data DecodedName Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DecodedName -> c DecodedName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DecodedName toConstr :: DecodedName -> Constr dataTypeOf :: DecodedName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DecodedName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DecodedName) gmapT :: (forall b. Data b => b -> b) -> DecodedName -> DecodedName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DecodedName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DecodedName -> r gmapQ :: (forall d. Data d => d -> u) -> DecodedName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DecodedName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DecodedName -> m DecodedName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DecodedName -> m DecodedName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DecodedName -> m DecodedName | |
Show DecodedName Source # | |
Defined in ABI.Itanium.Types Methods showsPrec :: Int -> DecodedName -> ShowS show :: DecodedName -> String showList :: [DecodedName] -> ShowS | |
Eq DecodedName Source # | |
Defined in ABI.Itanium.Types | |
Ord DecodedName Source # | |
Defined in ABI.Itanium.Types Methods compare :: DecodedName -> DecodedName -> Ordering (<) :: DecodedName -> DecodedName -> Bool (<=) :: DecodedName -> DecodedName -> Bool (>) :: DecodedName -> DecodedName -> Bool (>=) :: DecodedName -> DecodedName -> Bool max :: DecodedName -> DecodedName -> DecodedName min :: DecodedName -> DecodedName -> DecodedName |
data CVQualifier Source #
Instances
Data CVQualifier Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CVQualifier -> c CVQualifier gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CVQualifier toConstr :: CVQualifier -> Constr dataTypeOf :: CVQualifier -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CVQualifier) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CVQualifier) gmapT :: (forall b. Data b => b -> b) -> CVQualifier -> CVQualifier gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CVQualifier -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CVQualifier -> r gmapQ :: (forall d. Data d => d -> u) -> CVQualifier -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CVQualifier -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CVQualifier -> m CVQualifier gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CVQualifier -> m CVQualifier gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CVQualifier -> m CVQualifier | |
Show CVQualifier Source # | |
Defined in ABI.Itanium.Types Methods showsPrec :: Int -> CVQualifier -> ShowS show :: CVQualifier -> String showList :: [CVQualifier] -> ShowS | |
Eq CVQualifier Source # | |
Defined in ABI.Itanium.Types | |
Ord CVQualifier Source # | |
Defined in ABI.Itanium.Types Methods compare :: CVQualifier -> CVQualifier -> Ordering (<) :: CVQualifier -> CVQualifier -> Bool (<=) :: CVQualifier -> CVQualifier -> Bool (>) :: CVQualifier -> CVQualifier -> Bool (>=) :: CVQualifier -> CVQualifier -> Bool max :: CVQualifier -> CVQualifier -> CVQualifier min :: CVQualifier -> CVQualifier -> CVQualifier |
Constructors
Instances
Data CXXType Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CXXType -> c CXXType gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CXXType dataTypeOf :: CXXType -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CXXType) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CXXType) gmapT :: (forall b. Data b => b -> b) -> CXXType -> CXXType gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CXXType -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CXXType -> r gmapQ :: (forall d. Data d => d -> u) -> CXXType -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CXXType -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CXXType -> m CXXType gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CXXType -> m CXXType gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CXXType -> m CXXType | |
Show CXXType Source # | |
Eq CXXType Source # | |
Ord CXXType Source # | |
Constructors
NestedName [CVQualifier] [Prefix] UnqualifiedName | |
NestedTemplateName [CVQualifier] [Prefix] [TemplateArg] | |
UnscopedName UName | |
UnscopedTemplateName UName [TemplateArg] | |
UnscopedTemplateSubstitution Substitution [TemplateArg] |
Instances
Data Name Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Name -> c Name gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Name dataTypeOf :: Name -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Name) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Name) gmapT :: (forall b. Data b => b -> b) -> Name -> Name gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r gmapQ :: (forall d. Data d => d -> u) -> Name -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Name -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Name -> m Name gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name | |
Show Name Source # | |
Eq Name Source # | |
Ord Name Source # | |
Constructors
DataMemberPrefix String | |
UnqualifiedPrefix UnqualifiedName | |
SubstitutionPrefix Substitution | |
TemplateParamPrefix TemplateParam | |
TemplateArgsPrefix [TemplateArg] |
Instances
Data Prefix Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Prefix -> c Prefix gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Prefix dataTypeOf :: Prefix -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Prefix) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Prefix) gmapT :: (forall b. Data b => b -> b) -> Prefix -> Prefix gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Prefix -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Prefix -> r gmapQ :: (forall d. Data d => d -> u) -> Prefix -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Prefix -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Prefix -> m Prefix gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Prefix -> m Prefix gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Prefix -> m Prefix | |
Show Prefix Source # | |
Eq Prefix Source # | |
Ord Prefix Source # | |
data UnqualifiedName Source #
Constructors
OperatorName Operator | |
CtorDtorName CtorDtor | |
SourceName String |
Instances
Data UnqualifiedName Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UnqualifiedName -> c UnqualifiedName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UnqualifiedName toConstr :: UnqualifiedName -> Constr dataTypeOf :: UnqualifiedName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UnqualifiedName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UnqualifiedName) gmapT :: (forall b. Data b => b -> b) -> UnqualifiedName -> UnqualifiedName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UnqualifiedName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UnqualifiedName -> r gmapQ :: (forall d. Data d => d -> u) -> UnqualifiedName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> UnqualifiedName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> UnqualifiedName -> m UnqualifiedName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UnqualifiedName -> m UnqualifiedName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UnqualifiedName -> m UnqualifiedName | |
Show UnqualifiedName Source # | |
Defined in ABI.Itanium.Types Methods showsPrec :: Int -> UnqualifiedName -> ShowS show :: UnqualifiedName -> String showList :: [UnqualifiedName] -> ShowS | |
Eq UnqualifiedName Source # | |
Defined in ABI.Itanium.Types Methods (==) :: UnqualifiedName -> UnqualifiedName -> Bool (/=) :: UnqualifiedName -> UnqualifiedName -> Bool | |
Ord UnqualifiedName Source # | |
Defined in ABI.Itanium.Types Methods compare :: UnqualifiedName -> UnqualifiedName -> Ordering (<) :: UnqualifiedName -> UnqualifiedName -> Bool (<=) :: UnqualifiedName -> UnqualifiedName -> Bool (>) :: UnqualifiedName -> UnqualifiedName -> Bool (>=) :: UnqualifiedName -> UnqualifiedName -> Bool max :: UnqualifiedName -> UnqualifiedName -> UnqualifiedName min :: UnqualifiedName -> UnqualifiedName -> UnqualifiedName |
Instances
Data CtorDtor Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CtorDtor -> c CtorDtor gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CtorDtor toConstr :: CtorDtor -> Constr dataTypeOf :: CtorDtor -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CtorDtor) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CtorDtor) gmapT :: (forall b. Data b => b -> b) -> CtorDtor -> CtorDtor gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CtorDtor -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CtorDtor -> r gmapQ :: (forall d. Data d => d -> u) -> CtorDtor -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CtorDtor -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CtorDtor -> m CtorDtor gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CtorDtor -> m CtorDtor gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CtorDtor -> m CtorDtor | |
Show CtorDtor Source # | |
Eq CtorDtor Source # | |
Ord CtorDtor Source # | |
Constructors
Instances
Data Operator Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Operator -> c Operator gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Operator toConstr :: Operator -> Constr dataTypeOf :: Operator -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Operator) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Operator) gmapT :: (forall b. Data b => b -> b) -> Operator -> Operator gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Operator -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Operator -> r gmapQ :: (forall d. Data d => d -> u) -> Operator -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Operator -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Operator -> m Operator gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Operator -> m Operator gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Operator -> m Operator | |
Show Operator Source # | |
Eq Operator Source # | |
Ord Operator Source # | |
data Expression Source #
Constructors
Expression |
Instances
Data Expression Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Expression -> c Expression gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Expression toConstr :: Expression -> Constr dataTypeOf :: Expression -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Expression) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Expression) gmapT :: (forall b. Data b => b -> b) -> Expression -> Expression gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Expression -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Expression -> r gmapQ :: (forall d. Data d => d -> u) -> Expression -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Expression -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Expression -> m Expression gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Expression -> m Expression gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Expression -> m Expression | |
Show Expression Source # | |
Defined in ABI.Itanium.Types Methods showsPrec :: Int -> Expression -> ShowS show :: Expression -> String showList :: [Expression] -> ShowS | |
Eq Expression Source # | |
Defined in ABI.Itanium.Types | |
Ord Expression Source # | |
Defined in ABI.Itanium.Types Methods compare :: Expression -> Expression -> Ordering (<) :: Expression -> Expression -> Bool (<=) :: Expression -> Expression -> Bool (>) :: Expression -> Expression -> Bool (>=) :: Expression -> Expression -> Bool max :: Expression -> Expression -> Expression min :: Expression -> Expression -> Expression |
data CallOffset Source #
Constructors
VirtualOffset Int Int | |
NonVirtualOffset Int |
Instances
Data CallOffset Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CallOffset -> c CallOffset gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CallOffset toConstr :: CallOffset -> Constr dataTypeOf :: CallOffset -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CallOffset) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CallOffset) gmapT :: (forall b. Data b => b -> b) -> CallOffset -> CallOffset gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CallOffset -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CallOffset -> r gmapQ :: (forall d. Data d => d -> u) -> CallOffset -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CallOffset -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CallOffset -> m CallOffset gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CallOffset -> m CallOffset gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CallOffset -> m CallOffset | |
Show CallOffset Source # | |
Defined in ABI.Itanium.Types Methods showsPrec :: Int -> CallOffset -> ShowS show :: CallOffset -> String showList :: [CallOffset] -> ShowS | |
Eq CallOffset Source # | |
Defined in ABI.Itanium.Types | |
Ord CallOffset Source # | |
Defined in ABI.Itanium.Types Methods compare :: CallOffset -> CallOffset -> Ordering (<) :: CallOffset -> CallOffset -> Bool (<=) :: CallOffset -> CallOffset -> Bool (>) :: CallOffset -> CallOffset -> Bool (>=) :: CallOffset -> CallOffset -> Bool max :: CallOffset -> CallOffset -> CallOffset min :: CallOffset -> CallOffset -> CallOffset |
data Substitution Source #
Constructors
Substitution (Maybe String) | |
SubStdNamespace | |
SubStdAllocator | |
SubBasicString | |
SubBasicStringArgs | |
SubBasicIstream | |
SubBasicOstream | |
SubBasicIostream |
Instances
Data Substitution Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Substitution -> c Substitution gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Substitution toConstr :: Substitution -> Constr dataTypeOf :: Substitution -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Substitution) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Substitution) gmapT :: (forall b. Data b => b -> b) -> Substitution -> Substitution gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Substitution -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Substitution -> r gmapQ :: (forall d. Data d => d -> u) -> Substitution -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Substitution -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Substitution -> m Substitution gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Substitution -> m Substitution gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Substitution -> m Substitution | |
Show Substitution Source # | |
Defined in ABI.Itanium.Types Methods showsPrec :: Int -> Substitution -> ShowS show :: Substitution -> String showList :: [Substitution] -> ShowS | |
Eq Substitution Source # | |
Defined in ABI.Itanium.Types | |
Ord Substitution Source # | |
Defined in ABI.Itanium.Types Methods compare :: Substitution -> Substitution -> Ordering (<) :: Substitution -> Substitution -> Bool (<=) :: Substitution -> Substitution -> Bool (>) :: Substitution -> Substitution -> Bool (>=) :: Substitution -> Substitution -> Bool max :: Substitution -> Substitution -> Substitution min :: Substitution -> Substitution -> Substitution |
Constructors
UName UnqualifiedName | |
UStdName UnqualifiedName |
Instances
Data UName Source # | |
Defined in ABI.Itanium.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UName -> c UName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UName dataTypeOf :: UName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UName) gmapT :: (forall b. Data b => b -> b) -> UName -> UName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UName -> r gmapQ :: (forall d. Data d => d -> u) -> UName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> UName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> UName -> m UName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UName -> m UName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UName -> m UName | |
Show UName Source # | |
Eq UName Source # | |
Ord UName Source # | |
demangleName :: String -> Either String DecodedName Source #
Demangle a name into a structured representation (or an error string)
mangleName :: DecodedName -> Maybe String Source #
Re-mangle a name
cxxNameToString :: (Monad m, MonadThrow m) => DecodedName -> m String Source #
Primary interface to get the pretty version of a parsed mangled name in String form.
cxxNameToText :: (Monad m, MonadThrow m) => DecodedName -> m Text Source #
Primary interface to get the pretty version of a parsed mangled name in Text form. This is a monadic operation to support throwing an exception in that outer monad when there is a pretty-printing conversion error.
Generated parsers
rUnqualifiedPrefix :: forall tok e r. Boomerang e tok ((:-) UnqualifiedName r) ((:-) Prefix r) Source #
rConst :: forall tok e r. Boomerang e tok r ((:-) CVQualifier r) Source #
rSourceName :: forall tok e r. Boomerang e tok ((:-) String r) ((:-) UnqualifiedName r) Source #
rUName :: forall tok e r. Boomerang e tok ((:-) UnqualifiedName r) ((:-) UName r) Source #
rNestedName :: forall tok e r. Boomerang e tok ((:-) [CVQualifier] ((:-) [Prefix] ((:-) UnqualifiedName r))) ((:-) Name r) Source #
rUnscopedName :: forall tok e r. Boomerang e tok ((:-) UName r) ((:-) Name r) Source #