DIFlags
public struct DIFlags : OptionSet
Enumerates a set of flags that can be applied to metadata nodes to change their interpretation at compile time or attach additional semantic significance at runtime.
-
Declaration
Swift
public let rawValue: LLVMDIFlags.RawValue
-
Declaration
Swift
public init(rawValue: LLVMDIFlags.RawValue)
-
Denotes the
private
visibility attribute.Declaration
Swift
public static let `private`: DIFlags
-
Denotes the
protected
visibility attribute.Declaration
Swift
public static let protected: DIFlags
-
Denotes the
public
visibility attribute.Declaration
Swift
public static let `public`: DIFlags
-
Denotes a forward declaration.
Declaration
Swift
public static let forwardDeclaration: DIFlags
-
Denotes a block object.
Declaration
Swift
public static let appleBlock: DIFlags
-
Denotes a virtual function or dynamic dispatch.
Declaration
Swift
public static let virtual: DIFlags
-
Denotes a compiler-generated declaration that may not appear in source.
Declaration
Swift
public static let artificial: DIFlags
-
Denotes an
explicit
-annotated declaration.Declaration
Swift
public static let explicit: DIFlags
-
Denotes a prototype declaration.
Declaration
Swift
public static let prototyped: DIFlags
-
Denotes an Objective-C class whose definition is visible to the compiler.
Declaration
Swift
public static let objectiveCClassComplete: DIFlags
-
Denotes a pointer value that is known to point to a C++ or Objective-C object - usually
self
orthis
.Declaration
Swift
public static let objectPointer: DIFlags
-
Denotes a vector type.
Declaration
Swift
public static let vector: DIFlags
-
Denotes a static member.
Declaration
Swift
public static let staticMember: DIFlags
-
Denotes an lvalue reference.
Declaration
Swift
public static let lValueReference: DIFlags
-
Denotes an rvalue reference.
Declaration
Swift
public static let rValueReference: DIFlags
-
Denotes a class type that is part of a single inheritance class hierarchy. This flag is required to be set for CodeView compatibility.
Declaration
Swift
public static let singleInheritance: DIFlags
-
Denotes a class type that is part of a multiple inheritance class hierarchy. This flag is required to be set for CodeView compatibility.
Declaration
Swift
public static let multipleInheritance: DIFlags
-
Denotes a class type whose inheritance involves virtual members. This flag is required to be set for CodeView compatibility.
Declaration
Swift
public static let virtualInheritance: DIFlags
-
Denotes a class type that introduces virtual members. This is needed for the MS C++ ABI does not include all virtual methods from non-primary bases in the vtable for the most derived class
Declaration
Swift
public static let introducedVirtual: DIFlags
-
Denotes a bitfield type.
Declaration
Swift
public static let bitField: DIFlags
-
Denotes a
noreturn
function.Declaration
Swift
public static let noReturn: DIFlags
-
Denotes a parameter that is passed by value according to the target’s calling convention.
Declaration
Swift
public static let passByValue: DIFlags
-
Denotes a parameter that is passed by indirect reference according to the target’s calling convention.
Declaration
Swift
public static let passByReference: DIFlags
-
Denotes a “fixed enum” type e.g. a C++
enum class
.Declaration
Swift
public static let enumClass: DIFlags
-
Denotes a thunk function.
Declaration
Swift
public static let thunk: DIFlags
-
Denotes a class that has a non-trivial default constructor or is not trivially copiable.
Declaration
Swift
public static let nonTrivial: DIFlags
-
Denotes an indirect virtual base class.
Declaration
Swift
public static let indirectVirtualBase: DIFlags
-
The mask for
singleInheritance
,multipleInheritance
, andvirtualInheritance
.Declaration
Swift
public static let pointerToMemberRep: DIFlags