com.sun.tools.xjc.outline

Interface FieldAccessor

public interface FieldAccessor

Encapsulates the access on a field.
Method Summary
voidfromRawValue(JBlock block, String uniqueName, JExpression $var)
Sets the value of the field from the specified expression.
CPropertyInfogetPropertyInfo()
Short for owner().getPropertyInfo()
JExpressionhasSetValue()
Return an expression that evaluates to true only when this field has a set value(s).
FieldOutlineowner()
Gets the FieldOutline from which this object is created.
voidtoRawValue(JBlock block, JVar $var)
Dumps everything in this field into the given variable.
voidunsetValues(JBlock body)
Generates a code fragment to remove any "set" value and move this field to the "unset" state.

Method Detail

fromRawValue

public void fromRawValue(JBlock block, String uniqueName, JExpression $var)
Sets the value of the field from the specified expression.

This generates code that accesses the field from outside.

Parameters: block The code will be generated into this block. uniqueName Identifier that the caller guarantees to be unique in the given block. When the callee needs to produce additional variables, it can do so by adding suffixes to this unique name. For example, if the uniqueName is "abc", then the caller guarantees that any identifier "abc.*" is unused in this block. $var The expression that evaluates to a value of the type getRawType.

getPropertyInfo

public CPropertyInfo getPropertyInfo()
Short for owner().getPropertyInfo()

hasSetValue

public JExpression hasSetValue()
Return an expression that evaluates to true only when this field has a set value(s).

Returns: null if the isSetXXX/unsetXXX method does not make sense for the given field.

owner

public FieldOutline owner()
Gets the FieldOutline from which this object is created.

toRawValue

public void toRawValue(JBlock block, JVar $var)
Dumps everything in this field into the given variable.

This generates code that accesses the field from outside.

Parameters: block The code will be generated into this block. $var Variable whose type is getRawType

unsetValues

public void unsetValues(JBlock body)
Generates a code fragment to remove any "set" value and move this field to the "unset" state.

Parameters: body The code will be appended at the end of this block.