Package org.apache.tapestry5.plastic

# Interface FieldHandle

All Known Implementing Classes:
  `FieldHandleImpl`

public interface FieldHandle
Allows read/write access directly to a field (bypassing accessors). Does not use reflection, even if the field is private (the normal case for Plastic classes).

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `get(Object instance)`
  Gets the current value of the field.
  `void`
  `set(Object instance, Object newValue)`
  Updates the current value of the field.

- ## Method Details

  - ### get

    Object get(Object instance)
    Gets the current value of the field. If the field is a primitive value, then the primitive will be wrapped.
    Throws:
      `NullPointerException` - if the instance is null
      `ClassCastException` - if the instance is not the type that contains the field

  - ### set

    void set(Object instance, Object newValue)
    Updates the current value of the field. If the field is a primitive value, then the newValue will be unwrapped automatically.
    Throws:
      `NullPointerException` - if the instance is null
      `NullPointerException` - if the newValue is null and the field is a primitive type
      `ClassCastException` - if the instance is not the type that contains the field
      `ClassCastException` - if the newValue is not assignable to the field type (or not the matching wrapper type for a primitive field)