Ignore:
Timestamp:
Jul 10, 2015, 10:38:46 AM (4 years ago)
Author:
nmedfort
Message:

Temporary check-in.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/pablo/pabloAST.h

    r4650 r4656  
    2525    friend class Statement;
    2626    friend class Var;
    27     friend class If;
     27    friend class If;   
    2828    friend class While;
    2929    friend class PabloBlock;
     30    friend class Function;
    3031    friend class SymbolGenerator;
    3132public:
     
    3334    using Allocator = SlabAllocator<u_int8_t>;
    3435    using VectorAllocator = SlabAllocator<PabloAST *>;
    35     using Users = std::vector<PabloAST*, VectorAllocator>;
    36     using user_iterator = Users::iterator;
    37     using const_user_iterator = Users::const_iterator;
    38 
     36    using Vector = std::vector<PabloAST*, VectorAllocator>;
     37    using user_iterator = Vector::iterator;
     38    using const_user_iterator = Vector::const_iterator;
    3939
    4040    enum class ClassTypeId : unsigned {
    41         Advance
     41        // Constants
     42        Zeroes
     43        , Ones
     44        // Boolean operations
    4245        , And
     46        , Or
     47        , Not
     48        , Xor
     49        , Sel
     50        // Stream operations
     51        , Advance
     52        , ScanThru
     53        , MatchStar
     54        // Variable assignments
    4355        , Assign
     56        , Next
    4457        , Call
     58        , Var
     59        // Scope blocks
    4560        , If
     61        , While
     62        , Block
     63        , Function
     64        // Internal variables
    4665        , Integer
    47         , MatchStar
    48         , Next
    49         , Not
    50         , Ones
    51         , Or
    52         , ScanThru
    53         , Sel
    5466        , String
    55         , Var
    56         , While
    57         , Xor
    58         , Zeroes
    59         , Block
    6067    };
    6168    inline ClassTypeId getClassTypeId() const {
     
    7986    }
    8087
    81     inline Users & users() {
     88    inline Vector & users() {
    8289        return mUsers;
    8390    }
    8491
    85     inline const Users & users() const {
     92    inline const Vector & users() const {
    8693        return mUsers;
    8794    }
     
    8996    void replaceAllUsesWith(PabloAST * expr);
    9097
    91     inline Users::size_type getNumUses() const {
     98    inline Vector::size_type getNumUses() const {
    9299        return mUsers.size();
    93100    }
     
    128135private:
    129136    const ClassTypeId       mClassTypeId;
    130     Users                   mUsers;
     137    Vector                   mUsers;
    131138    static VectorAllocator  mVectorAllocator;
    132139};
Note: See TracChangeset for help on using the changeset viewer.