Class CodeUtils


  • public class CodeUtils
    extends java.lang.Object
    Utility code for things you will frequently need.

    This class provides common constants representing access modifiers and types. There are also some utility methods for munging data.

    Author:
    Thomas Down, Matthew Pocock
    • Constructor Detail

      • CodeUtils

        public CodeUtils()
    • Method Detail

      • classListToString

        public static java.lang.String classListToString​(CodeClass[] classes)
        Format an array of classes as a comma-seperated list.

        The names of each class in classes will be seperated by a comma and a space and will use CodeClass.getName() to produce strings for each one. Their names will be present in the return value in the same order they are found in the classes array

        Parameters:
        classes - the array of classes to format
        Returns:
        a String containing the list of class names
      • wordsForType

        public static int wordsForType​(CodeClass cc)
        Number of words needed for local variables of this type.

        Longs and doubles require 2 words (64 bits), where as everything else needs 1 word (32 bits). Void needs no words. This just hides that knowledge.

        Parameters:
        cc - the CodeClass to check word size for
        Returns:
        number of words needed for this type
      • isFloatType

        public static boolean isFloatType​(CodeClass cc)
        Returns true if the class is a floating point number.

        Double and Float are floating point numbers. All other classes are not.

        Parameters:
        cc - the class to check
        Returns:
        true if the class can be used to represent floating point numbers
      • isIntegerType

        public static boolean isIntegerType​(CodeClass cc)
        Returns true if the class is an integer number.

        All numeric types are integer (whole number) types, except for the floating point types. All other classes are not integer types.

        Parameters:
        cc - the class to check
        Returns:
        true if the class can be used to represent integer numbers