src/share/vm/classfile/javaClasses.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 7198429 Sdiff src/share/vm/classfile

src/share/vm/classfile/javaClasses.hpp

Print this page




1037   static Metadata*      vmtarget(oop mname);
1038   static void       set_vmtarget(oop mname, Metadata* target);
1039 
1040   static intptr_t       vmindex(oop mname);
1041   static void       set_vmindex(oop mname, intptr_t index);
1042 
1043   // Testers
1044   static bool is_subclass(Klass* klass) {
1045     return klass->is_subclass_of(SystemDictionary::MemberName_klass());
1046   }
1047   static bool is_instance(oop obj) {
1048     return obj != NULL && is_subclass(obj->klass());
1049   }
1050 
1051   // Relevant integer codes (keep these in synch. with MethodHandleNatives.Constants):
1052   enum {
1053     MN_IS_METHOD           = 0x00010000, // method (not constructor)
1054     MN_IS_CONSTRUCTOR      = 0x00020000, // constructor
1055     MN_IS_FIELD            = 0x00040000, // field
1056     MN_IS_TYPE             = 0x00080000, // nested type

1057     MN_REFERENCE_KIND_SHIFT = 24, // refKind
1058     MN_REFERENCE_KIND_MASK = 0x0F000000 >> MN_REFERENCE_KIND_SHIFT,
1059     // The SEARCH_* bits are not for MN.flags but for the matchFlags argument of MHN.getMembers:
1060     MN_SEARCH_SUPERCLASSES = 0x00100000, // walk super classes
1061     MN_SEARCH_INTERFACES   = 0x00200000  // walk implemented interfaces
1062   };
1063 
1064   // Accessors for code generation:
1065   static int clazz_offset_in_bytes()            { return _clazz_offset; }
1066   static int type_offset_in_bytes()             { return _type_offset; }
1067   static int name_offset_in_bytes()             { return _name_offset; }
1068   static int flags_offset_in_bytes()            { return _flags_offset; }
1069   static int vmtarget_offset_in_bytes()         { return _vmtarget_offset; }
1070   static int vmindex_offset_in_bytes()          { return _vmindex_offset; }
1071 };
1072 
1073 
1074 // Interface to java.lang.invoke.MethodType objects
1075 
1076 class java_lang_invoke_MethodType: AllStatic {




1037   static Metadata*      vmtarget(oop mname);
1038   static void       set_vmtarget(oop mname, Metadata* target);
1039 
1040   static intptr_t       vmindex(oop mname);
1041   static void       set_vmindex(oop mname, intptr_t index);
1042 
1043   // Testers
1044   static bool is_subclass(Klass* klass) {
1045     return klass->is_subclass_of(SystemDictionary::MemberName_klass());
1046   }
1047   static bool is_instance(oop obj) {
1048     return obj != NULL && is_subclass(obj->klass());
1049   }
1050 
1051   // Relevant integer codes (keep these in synch. with MethodHandleNatives.Constants):
1052   enum {
1053     MN_IS_METHOD            = 0x00010000, // method (not constructor)
1054     MN_IS_CONSTRUCTOR       = 0x00020000, // constructor
1055     MN_IS_FIELD             = 0x00040000, // field
1056     MN_IS_TYPE              = 0x00080000, // nested type
1057     MN_CALLER_SENSITIVE     = 0x00100000, // @CallerSensitive annotation detected
1058     MN_REFERENCE_KIND_SHIFT = 24, // refKind
1059     MN_REFERENCE_KIND_MASK  = 0x0F000000 >> MN_REFERENCE_KIND_SHIFT,
1060     // The SEARCH_* bits are not for MN.flags but for the matchFlags argument of MHN.getMembers:
1061     MN_SEARCH_SUPERCLASSES  = 0x00100000, // walk super classes
1062     MN_SEARCH_INTERFACES    = 0x00200000  // walk implemented interfaces
1063   };
1064 
1065   // Accessors for code generation:
1066   static int clazz_offset_in_bytes()            { return _clazz_offset; }
1067   static int type_offset_in_bytes()             { return _type_offset; }
1068   static int name_offset_in_bytes()             { return _name_offset; }
1069   static int flags_offset_in_bytes()            { return _flags_offset; }
1070   static int vmtarget_offset_in_bytes()         { return _vmtarget_offset; }
1071   static int vmindex_offset_in_bytes()          { return _vmindex_offset; }
1072 };
1073 
1074 
1075 // Interface to java.lang.invoke.MethodType objects
1076 
1077 class java_lang_invoke_MethodType: AllStatic {


src/share/vm/classfile/javaClasses.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File