Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Type.hpp

    re0115286 r6d51bd7  
    2121
    2222class Type : public Node {
    23 
     23public:
     24virtual const Type * accept( Visitor & v) const = 0;
    2425};
    2526
     
    3132/// The problem is that ast::ptr< ... > uses increment/decrement which won't work well with
    3233/// forward declarations
    33 inline void increment( const class Type * node, Node::ref_type ref ) { node->increment( ref ); }
    34 inline void decrement( const class Type * node, Node::ref_type ref ) { node->decrement( ref ); }
    35 inline void increment( const class VoidType * node, Node::ref_type ref ) { node->increment( ref ); }
    36 inline void decrement( const class VoidType * node, Node::ref_type ref ) { node->decrement( ref ); }
    37 inline void increment( const class BasicType * node, Node::ref_type ref ) { node->increment( ref ); }
    38 inline void decrement( const class BasicType * node, Node::ref_type ref ) { node->decrement( ref ); }
    39 inline void increment( const class PointerType * node, Node::ref_type ref ) { node->increment( ref ); }
    40 inline void decrement( const class PointerType * node, Node::ref_type ref ) { node->decrement( ref ); }
    41 inline void increment( const class ArrayType * node, Node::ref_type ref ) { node->increment( ref ); }
    42 inline void decrement( const class ArrayType * node, Node::ref_type ref ) { node->decrement( ref ); }
    43 inline void increment( const class ReferenceType * node, Node::ref_type ref ) { node->increment( ref ); }
    44 inline void decrement( const class ReferenceType * node, Node::ref_type ref ) { node->decrement( ref ); }
    45 inline void increment( const class QualifiedType * node, Node::ref_type ref ) { node->increment( ref ); }
    46 inline void decrement( const class QualifiedType * node, Node::ref_type ref ) { node->decrement( ref ); }
    47 inline void increment( const class FunctionType * node, Node::ref_type ref ) { node->increment( ref ); }
    48 inline void decrement( const class FunctionType * node, Node::ref_type ref ) { node->decrement( ref ); }
    49 inline void increment( const class ReferenceToType * node, Node::ref_type ref ) { node->increment( ref ); }
    50 inline void decrement( const class ReferenceToType * node, Node::ref_type ref ) { node->decrement( ref ); }
    51 inline void increment( const class StructInstType * node, Node::ref_type ref ) { node->increment( ref ); }
    52 inline void decrement( const class StructInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
    53 inline void increment( const class UnionInstType * node, Node::ref_type ref ) { node->increment( ref ); }
    54 inline void decrement( const class UnionInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
    55 inline void increment( const class EnumInstType * node, Node::ref_type ref ) { node->increment( ref ); }
    56 inline void decrement( const class EnumInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
    57 inline void increment( const class TraitInstType * node, Node::ref_type ref ) { node->increment( ref ); }
    58 inline void decrement( const class TraitInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
    59 inline void increment( const class TypeInstType * node, Node::ref_type ref ) { node->increment( ref ); }
    60 inline void decrement( const class TypeInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
    61 inline void increment( const class TupleType * node, Node::ref_type ref ) { node->increment( ref ); }
    62 inline void decrement( const class TupleType * node, Node::ref_type ref ) { node->decrement( ref ); }
    63 inline void increment( const class TypeofType * node, Node::ref_type ref ) { node->increment( ref ); }
    64 inline void decrement( const class TypeofType * node, Node::ref_type ref ) { node->decrement( ref ); }
    65 inline void increment( const class AttrType * node, Node::ref_type ref ) { node->increment( ref ); }
    66 inline void decrement( const class AttrType * node, Node::ref_type ref ) { node->decrement( ref ); }
    67 inline void increment( const class VarArgsType * node, Node::ref_type ref ) { node->increment( ref ); }
    68 inline void decrement( const class VarArgsType * node, Node::ref_type ref ) { node->decrement( ref ); }
    69 inline void increment( const class ZeroType * node, Node::ref_type ref ) { node->increment( ref ); }
    70 inline void decrement( const class ZeroType * node, Node::ref_type ref ) { node->decrement( ref ); }
    71 inline void increment( const class OneType * node, Node::ref_type ref ) { node->increment( ref ); }
    72 inline void decrement( const class OneType * node, Node::ref_type ref ) { node->decrement( ref ); }
    73 inline void increment( const class GlobalScopeType * node, Node::ref_type ref ) { node->increment( ref ); }
    74 inline void decrement( const class GlobalScopeType * node, Node::ref_type ref ) { node->decrement( ref ); }
     34inline void increment( const class Type * /*node*/, Node::ref_type /*ref*/ ) { /*node->increment( ref );*/ }
     35inline void decrement( const class Type * /*node*/, Node::ref_type /*ref*/ ) { /*node->decrement( ref );*/ }
     36// inline void increment( const class VoidType * node, Node::ref_type ref ) { node->increment( ref ); }
     37// inline void decrement( const class VoidType * node, Node::ref_type ref ) { node->decrement( ref ); }
     38// inline void increment( const class BasicType * node, Node::ref_type ref ) { node->increment( ref ); }
     39// inline void decrement( const class BasicType * node, Node::ref_type ref ) { node->decrement( ref ); }
     40// inline void increment( const class PointerType * node, Node::ref_type ref ) { node->increment( ref ); }
     41// inline void decrement( const class PointerType * node, Node::ref_type ref ) { node->decrement( ref ); }
     42// inline void increment( const class ArrayType * node, Node::ref_type ref ) { node->increment( ref ); }
     43// inline void decrement( const class ArrayType * node, Node::ref_type ref ) { node->decrement( ref ); }
     44// inline void increment( const class ReferenceType * node, Node::ref_type ref ) { node->increment( ref ); }
     45// inline void decrement( const class ReferenceType * node, Node::ref_type ref ) { node->decrement( ref ); }
     46// inline void increment( const class QualifiedType * node, Node::ref_type ref ) { node->increment( ref ); }
     47// inline void decrement( const class QualifiedType * node, Node::ref_type ref ) { node->decrement( ref ); }
     48// inline void increment( const class FunctionType * node, Node::ref_type ref ) { node->increment( ref ); }
     49// inline void decrement( const class FunctionType * node, Node::ref_type ref ) { node->decrement( ref ); }
     50// inline void increment( const class ReferenceToType * node, Node::ref_type ref ) { node->increment( ref ); }
     51// inline void decrement( const class ReferenceToType * node, Node::ref_type ref ) { node->decrement( ref ); }
     52// inline void increment( const class StructInstType * node, Node::ref_type ref ) { node->increment( ref ); }
     53// inline void decrement( const class StructInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
     54// inline void increment( const class UnionInstType * node, Node::ref_type ref ) { node->increment( ref ); }
     55// inline void decrement( const class UnionInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
     56// inline void increment( const class EnumInstType * node, Node::ref_type ref ) { node->increment( ref ); }
     57// inline void decrement( const class EnumInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
     58// inline void increment( const class TraitInstType * node, Node::ref_type ref ) { node->increment( ref ); }
     59// inline void decrement( const class TraitInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
     60// inline void increment( const class TypeInstType * node, Node::ref_type ref ) { node->increment( ref ); }
     61// inline void decrement( const class TypeInstType * node, Node::ref_type ref ) { node->decrement( ref ); }
     62// inline void increment( const class TupleType * node, Node::ref_type ref ) { node->increment( ref ); }
     63// inline void decrement( const class TupleType * node, Node::ref_type ref ) { node->decrement( ref ); }
     64// inline void increment( const class TypeofType * node, Node::ref_type ref ) { node->increment( ref ); }
     65// inline void decrement( const class TypeofType * node, Node::ref_type ref ) { node->decrement( ref ); }
     66// inline void increment( const class AttrType * node, Node::ref_type ref ) { node->increment( ref ); }
     67// inline void decrement( const class AttrType * node, Node::ref_type ref ) { node->decrement( ref ); }
     68// inline void increment( const class VarArgsType * node, Node::ref_type ref ) { node->increment( ref ); }
     69// inline void decrement( const class VarArgsType * node, Node::ref_type ref ) { node->decrement( ref ); }
     70// inline void increment( const class ZeroType * node, Node::ref_type ref ) { node->increment( ref ); }
     71// inline void decrement( const class ZeroType * node, Node::ref_type ref ) { node->decrement( ref ); }
     72// inline void increment( const class OneType * node, Node::ref_type ref ) { node->increment( ref ); }
     73// inline void decrement( const class OneType * node, Node::ref_type ref ) { node->decrement( ref ); }
     74// inline void increment( const class GlobalScopeType * node, Node::ref_type ref ) { node->increment( ref ); }
     75// inline void decrement( const class GlobalScopeType * node, Node::ref_type ref ) { node->decrement( ref ); }
    7576
    7677}
Note: See TracChangeset for help on using the changeset viewer.