Klasse VisibleMemberTable

java.lang.Object
org.jdrupes.mdoclet.internal.doclets.toolkit.util.VisibleMemberTable

public class VisibleMemberTable extends Object
This class computes the main data structure for the doclet’s operations.

Essentially, the implementation encapsulating the javax.lang.model’s view of what can be documented about a type element’s members.

The general operations are as follows:

Members: these are the members from j.l.m's view but are structured along the kinds of this class.

Extra Members: these are members enclosed in an undocumented package-private type element, and may not be linkable (or documented), however, the members of such a type element may be documented, as if declared in the subtype, only if the enclosing type is not being documented by a filter such as -public, -protected, etc.

Visible Members: these are the members that are "visible" and available and should be documented, in a type element.

The basic rule for computation: when considering a type element, besides its immediate direct types and interfaces, the computation should not expand to any other type in the inheritance hierarchy.

This table generates all the data structures it needs for each type, as its own view, and will present some form of this to the doclet as and when required to.

  • Konstruktordetails

  • Methodendetails

    • getAllVisibleMembers

      Returns a list of all visible enclosed members of a type element, and inherited members.

      Notes: a. The list may or may not contain simple overridden methods. A simple overridden method is one that overrides a super method with no specification changes as indicated by the existence of a sole {@inheritDoc} or devoid of any API comments.

      b.The list may contain (extra) members, inherited by inaccessible supertypes, primarily package private types. These members are required to be documented in the subtype when the supertype is not documented.

      Parameter:
      kind - the member kind
      Gibt zurück:
      a list of all visible members
    • getVisibleMembers

      Returns a list of visible enclosed members of a specified kind, filtered by the specified predicate.
      Parameter:
      kind - the member kind
      p - the predicate used to filter the output
      Gibt zurück:
      a list of visible enclosed members
    • getVisibleMembers

      Returns a list of all enclosed members including any extra members.

      Typically called by various builders.

      Parameter:
      kind - the member kind
      Gibt zurück:
      a list of visible enclosed members
    • getMembers

      Returns a list of visible enclosed members of given kind, declared in this type element, and does not include any inherited members or extra members.
      Gibt zurück:
      a list of visible enclosed members in this type
    • getOverriddenMethod

      Returns the method overridden by the provided method, or null.

      Sometimes it’s not possible to link to a method that a link, linkplain, or see tag mentions. This is because the method is a “simple override” and, thus, has no useful documentation, or because the method is declared in a type that has package access and, thus, has no visible documentation.

      Call this method to determine if any of the above is the case. If the call returns a method element, link to that method element instead of the provided method.

      Parameter:
      e - the method to check
      Gibt zurück:
      the method found or null
    • getVisibleTypeElements

      Returns a set of visible type elements in this type element’s lineage.

      This method returns the supertypes in the inheritance order C, B, A, j.l.O. The superinterfaces however are alpha sorted and appended to the resulting set.

      Gibt zurück:
      the set of visible classes in this map
    • hasVisibleMembers

      public boolean hasVisibleMembers()
      Returns true if this table contains visible members of any kind, including inherited members.
      Gibt zurück:
      true if visible members are present.
    • hasVisibleMembers

      Returns true if this table contains visible members of the specified kind, including inherited members.
      Gibt zurück:
      true if visible members are present.
    • getPropertyField

      Returns the field for a property identified by any of the methods for that property.
      Parameter:
      ee - the method
      Gibt zurück:
      the field or null if absent
    • getPropertyGetter

      Returns the getter method for a property identified by any of the methods for that property.
      Parameter:
      ee - the method
      Gibt zurück:
      the getter or null if absent
    • getPropertySetter

      Returns the setter method for a property identified by any of the methods for that property.
      Parameter:
      ee - the method
      Gibt zurück:
      the setter or null if absent
    • getPropertyMethod

      Returns the property method for a property identified by any of the methods for that property.
      Parameter:
      ee - the method
      Gibt zurück:
      the property method or null if absent
    • getImplementedMethods

    • getImplementedMethodHolder

    • hashCode

      public int hashCode()
      Setzt außer Kraft:
      hashCode in Klasse Object
    • equals

      public boolean equals(Object obj)
      Setzt außer Kraft:
      equals in Klasse Object