Package ghidra.trace.model.target.schema

# Class DefaultTraceObjectSchema.DefaultAttributeSchema

java.lang.Object
ghidra.trace.model.target.schema.DefaultTraceObjectSchema.DefaultAttributeSchema

All Implemented Interfaces:
  `TraceObjectSchema.AttributeSchema`, `Comparable<DefaultTraceObjectSchema.DefaultAttributeSchema>`

Enclosing class:
  `DefaultTraceObjectSchema`

public static class DefaultTraceObjectSchema.DefaultAttributeSchema extends Object implements TraceObjectSchema.AttributeSchema, Comparable<DefaultTraceObjectSchema.DefaultAttributeSchema>

- ## Field Summary

  ### Fields inherited from interface ghidra.trace.model.target.schema.TraceObjectSchema.AttributeSchema

  `DEFAULT_ANY, DEFAULT_OBJECT, DEFAULT_VOID`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DefaultAttributeSchema(String name, TraceObjectSchema.SchemaName schema, boolean isRequired, boolean isFixed, TraceObjectSchema.Hidden hidden)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `compareTo(DefaultTraceObjectSchema.DefaultAttributeSchema o)`
  `boolean`
  `equals(Object obj)`
  `TraceObjectSchema.Hidden`
  `getHidden()`
  `String`
  `getName()`
  Get the name of the attribute
  `TraceObjectSchema.SchemaName`
  `getSchema()`
  Get the schema name for the named attribute
  `int`
  `hashCode()`
  `boolean`
  `isFixed()`
  Check if the named attribute can be modified
  `boolean`
  `isRequired()`
  Check if the named attribute must always be present
  `String`
  `toString()`

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

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface ghidra.trace.model.target.schema.TraceObjectSchema.AttributeSchema

  `isHidden`

- ## Constructor Details

  - ### DefaultAttributeSchema

    public DefaultAttributeSchema(String name, TraceObjectSchema.SchemaName schema, boolean isRequired, boolean isFixed, TraceObjectSchema.Hidden hidden)

- ## Method Details

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### equals

    public boolean equals(Object obj)

    Generally speaking, object identity is sufficient for checking equality in production; however, this method is provided for testing equality between an actual and expected attribute schema.

    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`

  - ### compareTo

    public int compareTo(DefaultTraceObjectSchema.DefaultAttributeSchema o)
    Specified by:
      `compareTo` in interface `Comparable<DefaultTraceObjectSchema.DefaultAttributeSchema>`

  - ### getName

    public String getName()
    Description copied from interface: `TraceObjectSchema.AttributeSchema`
    Get the name of the attribute
    Specified by:
      `getName` in interface `TraceObjectSchema.AttributeSchema`
    Returns:
      the name of the attribute

  - ### getSchema

    public TraceObjectSchema.SchemaName getSchema()
    Description copied from interface: `TraceObjectSchema.AttributeSchema`
    Get the schema name for the named attribute
    Specified by:
      `getSchema` in interface `TraceObjectSchema.AttributeSchema`
    Returns:
      the schema name

  - ### isRequired

    public boolean isRequired()
    Description copied from interface: `TraceObjectSchema.AttributeSchema`
    Check if the named attribute must always be present
    Specified by:
      `isRequired` in interface `TraceObjectSchema.AttributeSchema`
    Returns:
      true if required, false if optional

  - ### isFixed

    public boolean isFixed()
    Description copied from interface: `TraceObjectSchema.AttributeSchema`
    Check if the named attribute can be modified
    Specified by:
      `isFixed` in interface `TraceObjectSchema.AttributeSchema`
    Returns:
      true if immutable, false if mutable

  - ### getHidden

    public TraceObjectSchema.Hidden getHidden()
    Specified by:
      `getHidden` in interface `TraceObjectSchema.AttributeSchema`