| 123 | |
| 124 | //- Abstract base class for complex tokens |
| 125 | class compound |
| 126 | : |
| 127 | public refCount |
| 128 | { |
| 129 | // Private data |
| 130 | |
| 131 | bool empty_; |
| 132 | |
| 133 | |
| 134 | // Private Member Functions |
| 135 | |
| 136 | //- Disallow default bitwise copy construct |
| 137 | compound(const compound&); |
| 138 | |
| 139 | //- Disallow default bitwise assignment |
| 140 | void operator=(const compound&); |
| 141 | |
| 142 | |
| 143 | public: |
| 144 | |
| 145 | //- Runtime type information |
| 146 | TypeName("compound"); |
| 147 | |
| 148 | |
| 149 | //- Declare run-time constructor selection table |
| 150 | declareRunTimeSelectionTable |
| 151 | ( |
| 152 | autoPtr, |
| 153 | compound, |
| 154 | Istream, |
| 155 | (Istream& is), |
| 156 | (is) |
| 157 | ); |
| 158 | |
| 159 | |
| 160 | // Constructors |
| 161 | |
| 162 | //- Construct null |
| 163 | compound() |
| 164 | : |
| 165 | empty_(false) |
| 166 | {} |
| 167 | |
| 168 | |
| 169 | // Selectors |
| 170 | |
| 171 | //- Select null constructed |
| 172 | static autoPtr<compound> New(const word& type, Istream&); |
| 173 | |
| 174 | |
| 175 | //- Destructor |
| 176 | virtual ~compound(); |
| 177 | |
| 178 | |
| 179 | // Member Functions |
| 180 | |
| 181 | // Access |
| 182 | |