Class SummarySorterHelper


  • public abstract class SummarySorterHelper
    extends java.lang.Object
    Process Java Doc Web-Page: An abstract helper class for user-provided SummarySorter.class files for sorting the Table of Contents inside the Field / Method / Constructor Summaries inside a Java Doc Web Page.


    • Field Detail

      • OBJECT_M

        🡇    
        protected static final java.lang.String OBJECT_M
        Label for methods inherited from class Object

        Checker Method OBJECT_M(Method) matches methods named: "hashCode", "toString", "equals"
        See Also:
        OBJECT_M(Method), Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String OBJECT_M = "Methods: class java.lang.Object";
        
      • ITERABLE_M

        🡅  🡇    
        protected static final java.lang.String ITERABLE_M
        Label for methods inherited from class Iterable
        See Also:
        Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String ITERABLE_M = "Methods: interface java.lang.Iterable";
        
      • ITERATOR_M

        🡅  🡇    
        protected static final java.lang.String ITERATOR_M
        Label for methods inherited from class Iterator

        Checker Method CLONEABLE_M(Method) matches method named: "next", "hasNext", "remove", "forEachRemaining"
        See Also:
        ITERATOR_M(Method), Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String ITERATOR_M = "Methods: interface java.lang.Iterator";
        
      • WRITER_M

        🡅  🡇    
        protected static final java.lang.String WRITER_M
        Label for methods inherited from class java.io.Writer

        Checker Method WRITER_M(Method) matches method named: "write", "close", "flush", "append"
        See Also:
        WRITER_M(Method), Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String WRITER_M = "Methods: class java.io.Writer";
        
      • SERIALIZABLE_F

        🡅  🡇    
        protected static final java.lang.String SERIALIZABLE_F
        Label for fields inherited from interface java.io.Serializable
        See Also:
        Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String SERIALIZABLE_F = "Serializable ID";
        
      • SINGLETON_F

        🡅  🡇    
        protected static final java.lang.String SINGLETON_F
        Label for fields that are static singleton instances of a class.
        See Also:
        Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String SINGLETON_F = "Singleton Instance";
        
      • ONLY_SERIALIZABLE_F

        🡅  🡇    
        protected static java.lang.String[] ONLY_SERIALIZABLE_F
        A Section-Titles String[] Array List containing only one category. The category is for Field Summaries having only one field - 'serialVersionUID'
        See Also:
        ONLY_SERIALIZABLE_F(Field)
        Code:
        Exact Field Declaration Expression:
        protected static String[] ONLY_SERIALIZABLE_F =
            { SERIALIZABLE_F };
        
      • EXCEPTION_CONVENIENCE_F

        🡅  🡇    
        protected static java.lang.String[] EXCEPTION_CONVENIENCE_F
        A Section-Titles String[] Array List containing two categories. The first merely used for the serialVersionUID, and the second contains all other fields. This is intended to be used for sorting Exception classes that provide "convenience" or "introspection" fields where data about the error that has occured is saved inside the exception.
        See Also:
        EXCEPTION_CONVENIENCE_F(Torello.HTML.Tools.JavaDoc.Field)
        Code:
        Exact Field Declaration Expression:
        protected static String[] EXCEPTION_CONVENIENCE_F =
            { SERIALIZABLE_F, "<CODE STYLE='font-size: 108%'>'final'</CODE> Exception Convenience Fields" };
        
      • EXCEPTION_CHECKERS_M

        🡅  🡇    
        protected static java.lang.String[] EXCEPTION_CHECKERS_M
        If an Exception class contains 'checker' methods, then this title-bar String[] Array can be used to categorize them. Note that this array only allows for this lone-category, and does not provide others. The sorter for this Titles-Bar requires that each method in the class have a name that begins with 'check'
        See Also:
        EXCEPTION_CHECKERS_M(Method)
        Code:
        Exact Field Declaration Expression:
        protected static String[] EXCEPTION_CHECKERS_M =
            { "<CODE STYLE='font-size: 108%'>'static'</CODE> Exception Check Methods" };
        
      • VALUES_M

        🡅  🡇    
        protected static final java.lang.String VALUES_M
        First Section-Title / Category for the Synthetic Enum-Method 'values()'. All 'enums' have a 'values' method that is auto-generated by the Java Compiler.
        See Also:
        enum$M$Sections, enum2$M$Sections, Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String VALUES_M = "List all Enum Constants";
        
      • VALUEOF_M

        🡅  🡇    
        protected static final java.lang.String VALUEOF_M
        Second Section-Title / Category for the Synthetic Enum-Method 'valueOf(String)'. All 'enums' have a 'valueOf' method that is auto-generated by the Java Compiler.
        See Also:
        enum$M$Sections, enum2$M$Sections, Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String VALUEOF_M = "Convert String to Enum Constant";
        
      • enum$M$Sections

        🡅  🡇    
        protected static java.lang.String[] enum$M$Sections
        Section Titles for the Synthetic Methods, the ones which are auto-generated by Java, of all declared 'enum' types. This String[] Array should be used when there the only methods listed on the Java Doc HTML Page are the two synthetically generated methods.

        If you have written additional functions, then you should use enum2$M$Sections, because that String[] Array has an extra Category / Section-Title called "More Methods".
        See Also:
        VALUEOF_M, VALUES_M, enum$M$Sorter(Torello.HTML.Tools.JavaDoc.Method)
        Code:
        Exact Field Declaration Expression:
        protected static String[] enum$M$Sections =
            { VALUEOF_M, VALUES_M };
        
      • enum2$M$Sections

        🡅  🡇    
        protected static java.lang.String[] enum2$M$Sections
        Section Titles for the Synthetic Methods, the ones which are auto-generated by Java, of all declared 'enum' types. This String[] Array should be used when there the only methods listed on the Java Doc HTML Page are the two synthetically generated methods.

        If your enum only has these two synthetic-Java methods, then you should use enum$M$Sections.
        See Also:
        VALUEOF_M, VALUES_M, enum2$M$Sorter(Torello.HTML.Tools.JavaDoc.Method)
        Code:
        Exact Field Declaration Expression:
        protected static String[] enum2$M$Sections =
            { VALUEOF_M, VALUES_M, "More Methods" };
        
      • STATIC_FACTORY

        🡅  🡇    
        protected static final java.lang.String STATIC_FACTORY
        Title-Category for methods that are 'static' Factory Methods.
        See Also:
        Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String STATIC_FACTORY = "Methods: Static Factory-Builder";
        
      • DEFAULT_COMP

        🡅  🡇    
        protected static final java.lang.String DEFAULT_COMP
        Title-Category for composition methods (for instance 'andThen')
        See Also:
        Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String DEFAULT_COMP = "Methods: Default Composition & Builder";
        
      • DEF_ITER_REMOVE

        🡅  🡇    
        protected static final java.lang.String DEF_ITER_REMOVE
        Iterator.remove() Method Title-Category.
        See Also:
        Constant Field Values
        Code:
        Exact Field Declaration Expression:
        protected static final String DEF_ITER_REMOVE = 
                "Default Methods: Remove Elements with Iterator.remove()";
        
      • fInterface$M$Sections

        🡅  🡇    
        protected static final java.lang.String[] fInterface$M$Sections
        A "Section Titles" String[] Array that contains only one Title/Category. This category identifies a Functional-Interface's Lambda-Target method.
        See Also:
        FINTERFACE_M
        Code:
        Exact Field Declaration Expression:
        protected static final String[] fInterface$M$Sections = { FINTERFACE_M };
        
    • Method Detail

      • UE

        🡅  🡇    
        protected static UnreachableError UE​(Declaration d)
        When writing a sorter method, it is often a good practice to throw the UnreachableError on the very last line of the sorter's code to ensure that every entity being sorted has been properly placed into one of the Table Of Contents Section Title Categories. This way, you ever add a new method / field / entity to the class, but forget to categorize it under a specific Section Title, an UnreachableError will instantly throw, reminding you to sort your newly created method, field, or other entity.

        The other primary reason for writing this method is to shorten the amount of typing that you need to do. The below example sorts all of the methods in a class into a Method Summary Section (on the JavaDoc Generated HTML Page) which has three Sections each with their own Title. The Titles, themselves, are listed in the String[] array. The sorting method for placing method's into one of these three Section Categories is directly beneath the listed categories.

        Notice in this example, the last line of code invokes this method ("UE(Declaration d)")

        Example:
         public static final String[] MyClass$Method$Sections =
         {  "Main Method", "Printing Methods", "File Saving Methods" };
        
         public static int MyClass$Method$Sorter(Method m)
         {
             if (m.name.equals("someName1"))          return 0;
             if (eqOR(m, "someName2", "someName3"))   return 1;
             if (swOR(m, "someName3"))                return 2;
         
             throw UE(m); // <== RIGHT-HERE, if the method is not categorized, it would have to be
                          // becuase you have added another method into the class.  This will halt
                          // your build process until you update your Method-Sorter Function.
         }
        
        Parameters:
        d - Any Declaration (Method, Field, Constructor, etc...). This is actually just supposed to be the entity that was passed to your sorter. If a call to 'UE(d)' is made one the last line of your sorter-function, the 'toString' method for the declaration will be printed to the terminal.
        Returns:
        This returns a newly created instance of UnreachableError, which may be immediately thrown. Remember, the general idea behind this method is to shorten the amount of typing you (the user / programmer) has to do. When writing Class "Entity Sorters", you will find yourself typing many short sorting methods, like in the example above, over and over again.
        Code:
        Exact Method Body:
         System.out.println(
             C.BRED + "Un Classified " + d.getClass().getSimpleName() + " Found:\n" +
             C.RESET + d.toString()
         );
        
         return new UnreachableError();
        
      • eqOR

        🡅  🡇    
        protected static boolean eqOR​(Declaration d,
                                      java.lang.String... sArr)
        An "Abbreviation Method" for reducing the amount of typing that needs to happen. Checks the name of the passed Declaration parameter against a list of possible matches.

        Returns the result of calling StrCmpr.equalsXOR on field Declaration.name, against the elements of parameter 'sArr'.
        Parameters:
        d - Any Method, Field, Constructor etc.
        sArr - A list of names for the Method, Field, Constructor etc..., that is passed to parameter 'd'. If the field Declaration.name is a String that Equals any one of the elements of parameter 'sArr', then this method shall return TRUE, otherwise FALSE is returned.
        Returns:
        TRUE - if and only if d.name Equals one of the elements of 'sArr'
        See Also:
        StrCmpr.equalsXOR(String, String[])
        Code:
        Exact Method Body:
         return StrCmpr.equalsXOR(d.name, sArr);
        
      • cOR

        🡅  🡇    
        protected static boolean cOR​(Declaration d,
                                     java.lang.String... sArr)
        An "Abbreviation Method" for reducing the amount of typing that needs to happen. Checks the name of the passed Declaration parameter against a list of possible matches.

        Returns the result of calling StrCmpr.containsOR on field Declaration.name, against the elements of parameter 'sArr'.
        Parameters:
        d - Any Method, Field, Constructor etc.
        sArr - A list of names for the Method, Field, Constructor etc..., that is passed to parameter 'd'. If the field Declaration.name is a String that Contains any one of the elements of parameter 'sArr', then this method shall return TRUE, otherwise FALSE is returned.
        Returns:
        TRUE - if and only if d.name Contains one of the elements of 'sArr'
        See Also:
        StrCmpr.containsOR(String, String[])
        Code:
        Exact Method Body:
         return StrCmpr.containsOR(d.name, sArr);
        
      • swOR

        🡅  🡇    
        protected static boolean swOR​(Declaration d,
                                      java.lang.String... sArr)
        An "Abbreviation Method" for reducing the amount of typing that needs to happen. Checks the name of the passed Declaration parameter against a list of possible matches.

        Returns the result of calling StrCmpr.startsWithXOR on field Declaration.name, against the elements of parameter 'sArr'.
        Parameters:
        d - Any Method, Field, Constructor etc.
        sArr - A list of names for the Method, Field, Constructor etc..., that is passed to parameter 'd'. If the field Declaration.name is a String that Starts-With any one of the elements of parameter 'sArr', then this method shall return TRUE, otherwise FALSE is returned.
        Returns:
        TRUE - if and only if d.name Starts-With one of the elements of 'sArr'
        See Also:
        StrCmpr.startsWithXOR(String, String[])
        Code:
        Exact Method Body:
         return StrCmpr.startsWithXOR(d.name, sArr);
        
      • ewOR

        🡅  🡇    
        protected static boolean ewOR​(Declaration d,
                                      java.lang.String... sArr)
        An "Abbreviation Method" for reducing the amount of typing that needs to happen. Checks the name of the passed Declaration parameter against a list of possible matches.

        Returns the result of calling StrCmpr.endsWithXOR on field Declaration.name, against the elements of parameter 'sArr'.
        Parameters:
        d - Any Method, Field, Constructor etc.
        sArr - A list of names for the Method, Field, Constructor etc..., that is passed to parameter 'd'. If the field Declaration.name is a String that Ends-With any one of the elements of parameter 'sArr', then this method shall return TRUE, otherwise FALSE is returned.
        Returns:
        TRUE - if and only if d.name Ends-With one of the elements of 'sArr'
        See Also:
        StrCmpr.endsWithXOR(String, String[])
        Code:
        Exact Method Body:
         return StrCmpr.endsWithXOR(d.name, sArr);
        
      • OBJECT_M

        🡅  🡇    
        protected static boolean OBJECT_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.lang.Object.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Object Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Object, and FALSE otherwise.
        See Also:
        OBJECT_M
        Code:
        Exact Method Body:
         return StrCmpr.equalsXOR(m.name, "hashCode", "toString", "equals");
        
      • ITERATOR_M

        🡅  🡇    
        protected static boolean ITERATOR_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.util.Iterator.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Iterator Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Iterator, and FALSE otherwise.
        See Also:
        ITERATOR_M
        Code:
        Exact Method Body:
         return StrCmpr.equalsXOR(m.name, "next", "hasNext", "remove", "forEachRemaining");
        
      • CLONEABLE_M

        🡅  🡇    
        protected static boolean CLONEABLE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.lang.Cloneable.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Cloneable Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Cloneable, and FALSE otherwise.
        See Also:
        CLONEABLE_M
        Code:
        Exact Method Body:
         return m.name.equals("clone");
        
      • APPENDABLE_M

        🡅  🡇    
        protected static boolean APPENDABLE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.lang.Appendable.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Appendable Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Appendable, and FALSE otherwise.
        See Also:
        APPENDABLE_M
        Code:
        Exact Method Body:
         return m.name.equals("append");
        
      • COMPARABLE_M

        🡅  🡇    
        protected static boolean COMPARABLE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.lang.Comparable.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Comparable Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Comparable, and FALSE otherwise.
        See Also:
        COMPARABLE_M
        Code:
        Exact Method Body:
         return m.name.equals("compareTo");
        
      • CHARSEQUENCE_M

        🡅  🡇    
        protected static boolean CHARSEQUENCE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.lang.CharSequence.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the CharSequence Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for CharSequence, and FALSE otherwise.
        See Also:
        CHARSEQUENCE_M
        Code:
        Exact Method Body:
         return StrCmpr.equalsXOR(m.name, "toString", "subSequence", "charAt", "length");
        
      • CLOSEABLE_M

        🡅  🡇    
        protected static boolean CLOSEABLE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.io.Closeable.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Closeable Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Closeable, and FALSE otherwise.
        See Also:
        CLOSEABLE_M
        Code:
        Exact Method Body:
         return m.name.equals("close") && m.returnType.equals("void");
        
      • FLUSHABLE_M

        🡅  🡇    
        protected static boolean FLUSHABLE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.io.Flushable.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Flushable Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Flushable, and FALSE otherwise.
        See Also:
        FLUSHABLE_M
        Code:
        Exact Method Body:
         return m.name.equals("flush") && m.returnType.equals("void");
        
      • WRITER_M

        🡅  🡇    
        protected static boolean WRITER_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.io.Writer.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Writer Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Writer, and FALSE otherwise.
        See Also:
        WRITER_M
        Code:
        Exact Method Body:
         return StrCmpr.equalsXOR(m.name, "write", "close", "flush", "append");
        
      • PRINTSTREAM_M

        🡅  🡇    
        protected static boolean PRINTSTREAM_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend java.io.PrintStream.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the PrintStream Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for PrintStream, and FALSE otherwise.
        See Also:
        PRINTSTREAM_M
        Code:
        Exact Method Body:
         return StrCmpr.equalsXOR(m.name, "print", "println", "printf", "format");
        
      • REPLACEABLE_M

        🡅  🡇    
        protected static boolean REPLACEABLE_M​(Method m)
        Identifies whether or not a particular method should be placed under the Method Summary Section Title for methods which implement or extend Replaceable.
        Parameters:
        m - This is the actual method, as an instance of Torello.HTML.Tools.JavaDoc.Method, that needs to be sorterd into a Class/Interface/Enum... "Summary Section-Title" Category. The boolean returned by this method merely indicates whether or not this method-parameter should be placed into the Replaceable Method's Section-Category.

        Again, the primary impetus for writing this class is to help save time and eliminate all of the tedium of that would be caused by retyping these lines over and over.
        Returns:
        TRUE if the parameter 'm' should be placed into the Section Title Category for Replaceable, and FALSE otherwise.
        See Also:
        REPLACEABLE_M
        Code:
        Exact Method Body:
         return REPLACEABLE_METHODS.contains(m.name);
        
      • EXCEPTION_CONVENIENCE_F

        🡅  🡇    
        protected static int EXCEPTION_CONVENIENCE_F​(Field f)
        This can be used to sort the Field's of an exception, provided that they fields obey the convenience-construct. This sorter will place the 'serialVersionUID' field into the first category, and all other fields into the second.

        It is assumed that the convenience-fields are declared final. If a field is not declared 'final', it will not be categorized, and an UnreachableError will throw.
        Parameters:
        f - This is the Field that the Java Doc Upgrader is currently categorizing.
        Throws:
        UnreachableError - If there are other fields in the class besides the Serial ID, and fields which aren't declared 'final'
        See Also:
        EXCEPTION_CONVENIENCE_F
        Code:
        Exact Method Body:
         if (SERIALIZABLE_F(f))      return 0;
         if (f.hasModifier("final")) return 1;
         throw UE(f);
        
      • EXCEPTION_CHECKERS_M

        🡅  🡇    
        protected static int EXCEPTION_CHECKERS_M​(Method m)
        Sorts a Method Summary Section for an Exception class that contains 'checker' methods. In Java HTML, 'check' methods are declared 'static', and will test parameter-input for exception cases, and then throw the exception in which those methods reside if there are errors with the input.

        NOTE: See, for example ParallelArrayException, which contains multiple methods of this variety.
        Parameters:
        m - This is the Method that the Java Doc Upgrader is currently categorizing.
        Throws:
        UnreachableError - If there are methods which aren't declared 'static', or there are methods whose name does not begin with "check".
        See Also:
        EXCEPTION_CHECKERS_M
        Code:
        Exact Method Body:
         if (m.name.startsWith("check") && m.hasModifier("static")) return 0;
         throw UE(m);
        
      • enum$M$Sorter

        🡅  🡇    
        protected static int enum$M$Sorter​(Method m)
        Sorts an enum's methods (in the Java Doc 'Method Summary') into the Categories / Section-Titles provided by enum$M$Sections.

        NOTE: If the 'enum' whose methods you are sorting has other methods besides the ones auto-created by the Java Compiler, you should use the pair enum2$M$Sections and enum2$M$Sorter(Method). This one will throw an UnreachableError if other methods are received.
        Parameters:
        m - This is the Method that the Java Doc Upgrader is currently categorizing.
        Returns:
        The category number where this method belongs.
        Throws:
        UnreachableError - If the 'enum' to which this Method Summary-Sorter has been applied has methods other than the Synthetically auto-generated methods 'values' and 'valueOf', then when those methods are received by this sorter, this error will throw.
        See Also:
        enum$M$Sections
        Code:
        Exact Method Body:
         if (m.name.equals("valueOf"))   return 0;
         if (m.name.equals("values"))    return 1;
         throw UE(m);
        
      • enum2$M$Sorter

        🡅  🡇    
        protected static int enum2$M$Sorter​(Method m)
        Sorts an enum's methods (in the Java Doc 'Method Summary') into the Categories / Section-Titles provided by enum2$M$Sections.
        Parameters:
        m - This is the Method that the Java Doc Upgrader is currently categorizing.
        Returns:
        The category number where this method belongs.
        See Also:
        enum2$M$Sections
        Code:
        Exact Method Body:
         if (m.name.equals("valueOf"))   return 0;
         if (m.name.equals("values"))    return 1;
         return 2;
        
      • fInterface$M$Sorter

        🡅    
        protected static int fInterface$M$Sorter​
                    (java.lang.String functionalIntMethName,
                     Method m)
        
        This can be used to place a functional-interface method under the sectional title for functional-interfaces. This method will only work on interfaces that have only method (namely: the lambda-target method).
        Parameters:
        functionalIntMethName - This is the name of the 'lone method' that is used as a lambda-target of a FunctionalInterface.
        m - This is the Method that the Java Doc Upgrader is currently categorizing.
        Throws:
        UnreachableError - If there are other methods in the class besides the one whose name equals 'functionalIntMethName'
        Code:
        Exact Method Body:
         if (m.name.equals(functionalIntMethName)) return 0;
         throw UE(m);