< prev index next >

src/hotspot/share/runtime/signature.hpp

Print this page


 467     return 0;
 468   }
 469   static void add_entry(GrowableArray<SigEntry>* sig, BasicType bt, int offset = -1);
 470   static void insert_reserved_entry(GrowableArray<SigEntry>* sig, int i, BasicType bt);
 471   static bool is_reserved_entry(const GrowableArray<SigEntry>* sig, int i);
 472   static bool skip_value_delimiters(const GrowableArray<SigEntry>* sig, int i);
 473   static int fill_sig_bt(const GrowableArray<SigEntry>* sig, BasicType* sig_bt);
 474   static TempNewSymbol create_symbol(const GrowableArray<SigEntry>* sig);
 475 
 476   static bool next_is_reserved(ExtendedSignature& sig, BasicType& bt, bool can_be_void = false);
 477 };
 478 
 479 class SigEntryFilter {
 480 public:
 481   bool operator()(const SigEntry& entry) { return entry._bt != T_VALUETYPE && entry._bt != T_VOID; }
 482 };
 483 
 484 #ifdef ASSERT
 485 class SignatureVerifier : public StackObj {
 486   public:
 487     static bool is_valid_method_signature(Symbol* sig);
 488     static bool is_valid_type_signature(Symbol* sig);
 489   private:
 490     static ssize_t is_valid_type(const char*, ssize_t);
 491 };
 492 #endif
 493 #endif // SHARE_RUNTIME_SIGNATURE_HPP


 467     return 0;
 468   }
 469   static void add_entry(GrowableArray<SigEntry>* sig, BasicType bt, int offset = -1);
 470   static void insert_reserved_entry(GrowableArray<SigEntry>* sig, int i, BasicType bt);
 471   static bool is_reserved_entry(const GrowableArray<SigEntry>* sig, int i);
 472   static bool skip_value_delimiters(const GrowableArray<SigEntry>* sig, int i);
 473   static int fill_sig_bt(const GrowableArray<SigEntry>* sig, BasicType* sig_bt);
 474   static TempNewSymbol create_symbol(const GrowableArray<SigEntry>* sig);
 475 
 476   static bool next_is_reserved(ExtendedSignature& sig, BasicType& bt, bool can_be_void = false);
 477 };
 478 
 479 class SigEntryFilter {
 480 public:
 481   bool operator()(const SigEntry& entry) { return entry._bt != T_VALUETYPE && entry._bt != T_VOID; }
 482 };
 483 
 484 #ifdef ASSERT
 485 class SignatureVerifier : public StackObj {
 486   public:
 487     static bool is_valid_method_signature(const Symbol* sig);
 488     static bool is_valid_type_signature(const Symbol* sig);
 489   private:
 490     static ssize_t is_valid_type(const char*, ssize_t);
 491 };
 492 #endif
 493 #endif // SHARE_RUNTIME_SIGNATURE_HPP
< prev index next >