Package groovy.inspect

## Class Inspector

- java.lang.Object
- - groovy.inspect.Inspector

-     public class Inspector
      extends Object

  The Inspector provides a unified access to an object's information that can be determined by introspection.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `Inspector.MemberComparator` |

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `CLASS_CLASS_IDX` |
    `static int` | `CLASS_INTERFACE_IDX` |
    `static int` | `CLASS_OTHER_IDX` |
    `static int` | `CLASS_PACKAGE_IDX` |
    `static int` | `CLASS_SUPERCLASS_IDX` |
    `static String` | `GROOVY` |
    `static String` | `JAVA` |
    `static int` | `MEMBER_DECLARER_IDX` |
    `static int` | `MEMBER_EXCEPTIONS_IDX` |
    `static int` | `MEMBER_MODIFIER_IDX` |
    `static int` | `MEMBER_NAME_IDX` |
    `static int` | `MEMBER_ORIGIN_IDX` |
    `static int` | `MEMBER_PARAMS_IDX` |
    `static int` | `MEMBER_TYPE_IDX` |
    `static int` | `MEMBER_VALUE_IDX` |
    `static String` | `NOT_APPLICABLE` |
    `protected Object` | `objectUnderInspection` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Inspector​(Object objectUnderInspection)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected String[]` | `fieldInfo​(PropertyValue pv)` |
    `protected String[]` | `fieldInfo​(Field field)` |
    `String[]` | `getClassProps()` | Get the Class Properties of the object under inspection.
    `protected Class` | `getClassUnderInspection()` |
    `Object[]` | `getMetaMethods()` | Get info about instance and class Methods that are dynamically added through Groovy.
    `Object[]` | `getMethods()` | Get info about usual Java instance and class Methods as well as Constructors.
    `Object` | `getObject()` | Gets the object being inspected.
    `Object[]` | `getPropertyInfo()` | Get info about Properties (Java and Groovy alike).
    `Object[]` | `getPublicFields()` | Get info about usual Java public fields incl.
    `boolean` | `isGroovy()` |
    `protected String[]` | `methodInfo​(MetaMethod method)` |
    `protected String[]` | `methodInfo​(Constructor ctor)` |
    `protected String[]` | `methodInfo​(Method method)` |
    `static void` | `print​(Object[] memberInfo)` |
    `static String` | `shortName​(Class clazz)` |
    `static Collection` | `sort​(List<Object> memberInfo)` |
    `protected String[]` | `withoutNulls​(String[] toNormalize)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### objectUnderInspection

          protected Object objectUnderInspection

    - #### CLASS_PACKAGE_IDX

          public static final int CLASS_PACKAGE_IDX

      See Also:
        Constant Field Values

    - #### CLASS_CLASS_IDX

          public static final int CLASS_CLASS_IDX

      See Also:
        Constant Field Values

    - #### CLASS_INTERFACE_IDX

          public static final int CLASS_INTERFACE_IDX

      See Also:
        Constant Field Values

    - #### CLASS_SUPERCLASS_IDX

          public static final int CLASS_SUPERCLASS_IDX

      See Also:
        Constant Field Values

    - #### CLASS_OTHER_IDX

          public static final int CLASS_OTHER_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_ORIGIN_IDX

          public static final int MEMBER_ORIGIN_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_MODIFIER_IDX

          public static final int MEMBER_MODIFIER_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_DECLARER_IDX

          public static final int MEMBER_DECLARER_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_TYPE_IDX

          public static final int MEMBER_TYPE_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_NAME_IDX

          public static final int MEMBER_NAME_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_PARAMS_IDX

          public static final int MEMBER_PARAMS_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_VALUE_IDX

          public static final int MEMBER_VALUE_IDX

      See Also:
        Constant Field Values

    - #### MEMBER_EXCEPTIONS_IDX

          public static final int MEMBER_EXCEPTIONS_IDX

      See Also:
        Constant Field Values

    - #### NOT_APPLICABLE

          public static final String NOT_APPLICABLE

      See Also:
        Constant Field Values

    - #### GROOVY

          public static final String GROOVY

      See Also:
        Constant Field Values

    - #### JAVA

          public static final String JAVA

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Inspector

          public Inspector​(Object objectUnderInspection)

      Parameters:
        `objectUnderInspection` - must not be null

  - ### Method Detail

    - #### getClassProps

          public String[] getClassProps()

      Get the Class Properties of the object under inspection.
      Returns:
        String array to be indexed by the CLASS_xxx_IDX constants

    - #### isGroovy

          public boolean isGroovy()

    - #### getObject

          public Object getObject()

      Gets the object being inspected.
      Returns:
        the object

    - #### getMethods

          public Object[] getMethods()

      Get info about usual Java instance and class Methods as well as Constructors.
      Returns:
        Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants

    - #### getMetaMethods

          public Object[] getMetaMethods()

      Get info about instance and class Methods that are dynamically added through Groovy.
      Returns:
        Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants

    - #### getPublicFields

          public Object[] getPublicFields()

      Get info about usual Java public fields incl. constants.
      Returns:
        Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants

    - #### getPropertyInfo

          public Object[] getPropertyInfo()

      Get info about Properties (Java and Groovy alike).
      Returns:
        Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants

    - #### fieldInfo

          protected String[] fieldInfo​(Field field)

    - #### fieldInfo

          protected String[] fieldInfo​(PropertyValue pv)

    - #### getClassUnderInspection

          protected Class getClassUnderInspection()

    - #### shortName

          public static String shortName​(Class clazz)

    - #### methodInfo

          protected String[] methodInfo​(Method method)

    - #### methodInfo

          protected String[] methodInfo​(Constructor ctor)

    - #### methodInfo

          protected String[] methodInfo​(MetaMethod method)

    - #### withoutNulls

          protected String[] withoutNulls​(String[] toNormalize)

    - #### print

          public static void print​(Object[] memberInfo)

    - #### sort

          public static Collection sort​(List<Object> memberInfo)