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 |