Files
swift-mirror/include/swift/Basic/DemangleNodes.def
Manman Ren 276af26e12 [Global Opt] adds GlobalGetter as one kind of SILDeclRef.
Also handles mangling, demangling, printing and parsing.

This is the first patch to use global getter for "let" globals.

rdar://16614767


Swift SVN r23106
2014-11-05 00:40:32 +00:00

135 lines
3.1 KiB
C++

//===-- DemangleNodes.def - Demangling Tree Metaprogramming -----*- C++ -*-===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2015 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See http://swift.org/LICENSE.txt for license information
// See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
//
// This file defines macros useful for macro-metaprogramming with nodes in
// the demangling tree.
//
//===----------------------------------------------------------------------===//
/// NODE(ID)
/// The node's enumerator value is Node::Kind::ID.
NODE(Failure)
NODE(Addressor)
NODE(Allocator)
NODE(ArchetypeAndProtocol)
NODE(ArchetypeRef)
NODE(ArgumentTuple)
NODE(AssociatedTypeRef)
NODE(AutoClosureType)
NODE(BoundGenericClass)
NODE(BoundGenericEnum)
NODE(BoundGenericStructure)
NODE(BuiltinTypeName)
NODE(Class)
NODE(Constructor)
NODE(Deallocator)
NODE(DeclContext)
NODE(DefaultArgumentInitializer)
NODE(DependentGenericSignature)
NODE(DependentGenericParamCount)
NODE(DependentGenericConformanceRequirement)
NODE(DependentGenericSameTypeRequirement)
NODE(DependentGenericType)
NODE(DependentMemberType)
NODE(DependentGenericParamType)
NODE(DependentProtocolWitnessTableGenerator)
NODE(DependentProtocolWitnessTableTemplate)
NODE(Destructor)
NODE(DidSet)
NODE(Directness)
NODE(DynamicAttribute)
NODE(DynamicSelf)
NODE(Enum)
NODE(ErrorType)
NODE(ExistentialMetatype)
NODE(ExplicitClosure)
NODE(Extension)
NODE(FieldOffset)
NODE(Function)
NODE(FunctionType)
NODE(Generics)
NODE(GenericType)
NODE(GenericTypeMetadataPattern)
NODE(Getter)
NODE(Global)
NODE(GlobalGetter)
NODE(Identifier)
NODE(IVarInitializer)
NODE(IVarDestroyer)
NODE(ImplConvention)
NODE(ImplFunctionAttribute)
NODE(ImplFunctionType)
NODE(ImplicitClosure)
NODE(ImplParameter)
NODE(ImplResult)
NODE(InOut)
NODE(InfixOperator)
NODE(Initializer)
NODE(LazyProtocolWitnessTableAccessor)
NODE(LazyProtocolWitnessTableTemplate)
NODE(LocalDeclName)
NODE(MaterializeForSet)
NODE(Metatype)
NODE(Metaclass)
NODE(Module)
NODE(MutableAddressor)
NODE(NominalTypeDescriptor)
NODE(NonObjCAttribute)
NODE(NonVariadicTuple)
NODE(Number)
NODE(ObjCAttribute)
NODE(ObjCBlock)
NODE(PartialApplyForwarder)
NODE(PartialApplyObjCForwarder)
NODE(PostfixOperator)
NODE(PrefixOperator)
NODE(PrivateDeclName)
NODE(Protocol)
NODE(ProtocolConformance)
NODE(ProtocolList)
NODE(ProtocolWitness)
NODE(ProtocolWitnessTable)
NODE(QualifiedArchetype)
NODE(ReabstractionThunk)
NODE(ReabstractionThunkHelper)
NODE(ReturnType)
NODE(SelfTypeRef)
NODE(Setter)
NODE(SpecializedAttribute)
NODE(SpecializationParam)
NODE(Structure)
NODE(Subscript)
NODE(Suffix)
NODE(TupleElement)
NODE(TupleElementName)
NODE(TupleElementType)
NODE(Type)
NODE(TypeAlias)
NODE(TypeList)
NODE(TypeMetadata)
NODE(TypeMetadataAccessFunction)
NODE(TypeMetadataLazyCache)
NODE(UncurriedFunctionType)
NODE(Unknown)
NODE(Unmanaged)
NODE(Unowned)
NODE(ValueWitness)
NODE(ValueWitnessTable)
NODE(Variable)
NODE(VariadicTuple)
NODE(Weak)
NODE(WillSet)
NODE(WitnessTableOffset)
#undef NODE