Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/clang/AST/TypeLocNodes.def is written in an unsupported language. File is not indexed.

0001 //===-- TypeLocNodes.def - Metadata about TypeLoc wrappers ------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 //
0009 //  This file defines the TypeLoc info database.  Each node is
0010 //  enumerated by providing its core name (e.g., "Pointer" for "PointerTypeLoc")
0011 //  and base class (e.g., "DeclaratorLoc").  All nodes except QualifiedTypeLoc
0012 //  are associated
0013 //
0014 //    TYPELOC(Class, Base) - A TypeLoc subclass.  If UNQUAL_TYPELOC is
0015 //      provided, there will be exactly one of these, Qualified.
0016 //
0017 //    UNQUAL_TYPELOC(Class, Base, Type) - An UnqualTypeLoc subclass.
0018 //
0019 //    ABSTRACT_TYPELOC(Class) - Refers to TypeSpecLoc and DeclaratorLoc.
0020 //
0021 //===----------------------------------------------------------------------===//
0022 
0023 #ifndef UNQUAL_TYPELOC
0024 #  define UNQUAL_TYPELOC(Class, Base) TYPELOC(Class, Base)
0025 #endif
0026 
0027 #ifndef ABSTRACT_TYPELOC
0028 #  define ABSTRACT_TYPELOC(Class, Base) UNQUAL_TYPELOC(Class, Base)
0029 #endif
0030 
0031 TYPELOC(Qualified, TypeLoc)
0032 #define TYPE(Class, Base) UNQUAL_TYPELOC(Class, Base##Loc)
0033 #define ABSTRACT_TYPE(Class, Base) ABSTRACT_TYPELOC(Class, Base##Loc)
0034 #include "clang/AST/TypeNodes.inc"
0035 
0036 #undef DECLARATOR_TYPELOC
0037 #undef TYPESPEC_TYPELOC
0038 #undef ABSTRACT_TYPELOC
0039 #undef UNQUAL_TYPELOC
0040 #undef TYPELOC