| 1 | // Copyright (c) 2011, the Dart project authors.  Please see the AUTHORS file | 
|---|
| 2 | // for details. All rights reserved. Use of this source code is governed by a | 
|---|
| 3 | // BSD-style license that can be found in the LICENSE file. | 
|---|
| 4 |  | 
|---|
| 5 | #ifndef RUNTIME_LIB_MIRRORS_H_ | 
|---|
| 6 | #define RUNTIME_LIB_MIRRORS_H_ | 
|---|
| 7 |  | 
|---|
| 8 | #include "vm/allocation.h" | 
|---|
| 9 |  | 
|---|
| 10 | namespace dart { | 
|---|
| 11 |  | 
|---|
| 12 | class Mirrors : public AllStatic { | 
|---|
| 13 | public: | 
|---|
| 14 | #define MIRRORS_KIND_SHIFT_LIST(V)                                             \ | 
|---|
| 15 | V(kAbstract)                                                                 \ | 
|---|
| 16 | V(kGetter)                                                                   \ | 
|---|
| 17 | V(kSetter)                                                                   \ | 
|---|
| 18 | V(kConstructor)                                                              \ | 
|---|
| 19 | V(kConstCtor)                                                                \ | 
|---|
| 20 | V(kGenerativeCtor)                                                           \ | 
|---|
| 21 | V(kRedirectingCtor)                                                          \ | 
|---|
| 22 | V(kFactoryCtor)                                                              \ | 
|---|
| 23 | V(kExternal)                                                                 \ | 
|---|
| 24 | V(kSynthetic)                                                                \ | 
|---|
| 25 | V(kExtensionMember) | 
|---|
| 26 |  | 
|---|
| 27 | // These offsets much be kept in sync with those in mirrors_impl.dart. | 
|---|
| 28 | enum KindShifts { | 
|---|
| 29 | #define DEFINE_KIND_SHIFT_ENUM(name) name, | 
|---|
| 30 | MIRRORS_KIND_SHIFT_LIST(DEFINE_KIND_SHIFT_ENUM) | 
|---|
| 31 | #undef DEFINE_KIND_SHIFT_ENUM | 
|---|
| 32 | }; | 
|---|
| 33 | }; | 
|---|
| 34 |  | 
|---|
| 35 | }  // namespace dart | 
|---|
| 36 |  | 
|---|
| 37 | #endif  // RUNTIME_LIB_MIRRORS_H_ | 
|---|
| 38 |  | 
|---|