< prev index next >

src/share/vm/runtime/arguments.cpp

Print this page

        

*** 407,454 **** } } return false; } ! // Returns 1 if the flag is special and jdk version is in the range specified. ! // In this case the 'version' buffer is filled in with the version number when ! // the flag became special. ! // Returns -1 if the flag is the wrong kind of special - expired or (check_deprecated & obsolete). ! // Returns 0 if the flag is not special. ! // "flag_name" is a flag name stripped of '+', '-', and '='. ! static int is_special_flag(bool check_deprecated, const char *flag_name, JDK_Version* version) { assert(version != NULL, "Must provide a version buffer"); SpecialFlag flag; if (lookup_special_flag(flag_name, flag)) { ! if (check_deprecated && !flag.deprecated_in.is_undefined()) { if (version_less_than(JDK_Version::current(), flag.obsolete_in) && version_less_than(JDK_Version::current(), flag.expired_in)) { *version = flag.deprecated_in; return 1; } else { return -1; } - } else if (!check_deprecated && !flag.obsolete_in.is_undefined()) { - if (version_less_than(JDK_Version::current(), flag.expired_in)) { - *version = flag.obsolete_in; - return 1; - } else { - return -1; - } } } return 0; } - bool Arguments::is_obsolete_flag(const char *flag_name, JDK_Version* version) { - return (is_special_flag(false, flag_name, version) == 1); - } - - int Arguments::is_deprecated_flag(const char *flag_name, JDK_Version* version) { - return is_special_flag(true, flag_name, version); - } - const char* Arguments::real_flag_name(const char *flag_name) { for (size_t i = 0; aliased_jvm_flags[i].alias_name != NULL; i++) { const AliasedFlag& flag_status = aliased_jvm_flags[i]; if (strcmp(flag_status.alias_name, flag_name) == 0) { return flag_status.real_name; --- 407,447 ---- } } return false; } ! bool Arguments::is_obsolete_flag(const char *flag_name, JDK_Version* version) { ! assert(version != NULL, "Must provide a version buffer"); ! SpecialFlag flag; ! if (lookup_special_flag(flag_name, flag)) { ! if (!flag.obsolete_in.is_undefined()) { ! if (version_less_than(JDK_Version::current(), flag.expired_in)) { ! *version = flag.obsolete_in; ! return true; ! } ! } ! } ! return false; ! } ! ! int Arguments::is_deprecated_flag(const char *flag_name, JDK_Version* version) { assert(version != NULL, "Must provide a version buffer"); SpecialFlag flag; if (lookup_special_flag(flag_name, flag)) { ! if (!flag.deprecated_in.is_undefined()) { if (version_less_than(JDK_Version::current(), flag.obsolete_in) && version_less_than(JDK_Version::current(), flag.expired_in)) { *version = flag.deprecated_in; return 1; } else { return -1; } } } return 0; } const char* Arguments::real_flag_name(const char *flag_name) { for (size_t i = 0; aliased_jvm_flags[i].alias_name != NULL; i++) { const AliasedFlag& flag_status = aliased_jvm_flags[i]; if (strcmp(flag_status.alias_name, flag_name) == 0) { return flag_status.real_name;
< prev index next >