< prev index next >

src/hotspot/share/classfile/vmSymbols.hpp

Print this page




1549   // Initialization
1550   static void initialize(TRAPS);
1551   // Accessing
1552   #define VM_SYMBOL_DECLARE(name, ignore)                 \
1553     static Symbol* name() {                               \
1554       return _symbols[VM_SYMBOL_ENUM_NAME(name)];         \
1555     }
1556   VM_SYMBOLS_DO(VM_SYMBOL_DECLARE, VM_SYMBOL_DECLARE)
1557   #undef VM_SYMBOL_DECLARE
1558 
1559   // Sharing support
1560   static void symbols_do(SymbolClosure* f);
1561   static void metaspace_pointers_do(MetaspaceClosure *it);
1562   static void serialize(SerializeClosure* soc);
1563 
1564   static Symbol* type_signature(BasicType t) {
1565     assert((uint)t < T_VOID+1, "range check");
1566     assert(_type_signatures[t] != NULL, "domain check");
1567     return _type_signatures[t];
1568   }
1569   // inverse of type_signature; returns T_OBJECT if s is not recognized
1570   static BasicType signature_type(const Symbol* s);
1571 
1572   static Symbol* symbol_at(SID id) {
1573     assert(id >= FIRST_SID && id < SID_LIMIT, "oob");
1574     assert(_symbols[id] != NULL, "init");
1575     return _symbols[id];
1576   }
1577 
1578   // Returns symbol's SID if one is assigned, else NO_SID.
1579   static SID find_sid(const Symbol* symbol);
1580   static SID find_sid(const char* symbol_name);
1581 
1582 #ifndef PRODUCT
1583   // No need for this in the product:
1584   static const char* name_for(SID sid);
1585 #endif //PRODUCT
1586 };
1587 
1588 // VM Intrinsic ID's uniquely identify some very special methods
1589 class vmIntrinsics: AllStatic {
1590   friend class vmSymbols;




1549   // Initialization
1550   static void initialize(TRAPS);
1551   // Accessing
1552   #define VM_SYMBOL_DECLARE(name, ignore)                 \
1553     static Symbol* name() {                               \
1554       return _symbols[VM_SYMBOL_ENUM_NAME(name)];         \
1555     }
1556   VM_SYMBOLS_DO(VM_SYMBOL_DECLARE, VM_SYMBOL_DECLARE)
1557   #undef VM_SYMBOL_DECLARE
1558 
1559   // Sharing support
1560   static void symbols_do(SymbolClosure* f);
1561   static void metaspace_pointers_do(MetaspaceClosure *it);
1562   static void serialize(SerializeClosure* soc);
1563 
1564   static Symbol* type_signature(BasicType t) {
1565     assert((uint)t < T_VOID+1, "range check");
1566     assert(_type_signatures[t] != NULL, "domain check");
1567     return _type_signatures[t];
1568   }


1569 
1570   static Symbol* symbol_at(SID id) {
1571     assert(id >= FIRST_SID && id < SID_LIMIT, "oob");
1572     assert(_symbols[id] != NULL, "init");
1573     return _symbols[id];
1574   }
1575 
1576   // Returns symbol's SID if one is assigned, else NO_SID.
1577   static SID find_sid(const Symbol* symbol);
1578   static SID find_sid(const char* symbol_name);
1579 
1580 #ifndef PRODUCT
1581   // No need for this in the product:
1582   static const char* name_for(SID sid);
1583 #endif //PRODUCT
1584 };
1585 
1586 // VM Intrinsic ID's uniquely identify some very special methods
1587 class vmIntrinsics: AllStatic {
1588   friend class vmSymbols;


< prev index next >