# Class: com.pnfsoftware.jeb.core.units.code.asm.processor.AbstractOperandBuilder

An operand builder that supports an optional value as well as a memory area.

## Constructor: AbstractOperandBuilder
- parameter: `memoryArea`, type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.IEncodedMemoryArea`

Description: Create an operand builder with no flags.
parameter: memoryArea: encoded memory area

## Constructor: AbstractOperandBuilder
- parameter: `memoryArea`, type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.IEncodedMemoryArea`
- parameter: `flags`, type: `int`

Description: Create an operand builder.
parameter: memoryArea: encoded memory area
parameter: flags: builder flags

## Constructor: AbstractOperandBuilder
- parameter: `memoryArea`, type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.IEncodedMemoryArea`
- parameter: `flags`, type: `int`
- parameter: `defaultValue`, type: `int`
- parameter: `defaultValueMask`, type: `int`

Description: Create an operand builder.
parameter: memoryArea: encoded memory area
parameter: flags: builder flags
parameter: defaultValue: optional default value
parameter: defaultValueMask: optional default value mask

## Protected Field: flags
Type: `int`

## Static Field: NO_FLAG
Type: `int`

Constant value: `0`
Description: No operand\-builder flags.

## Static Field: OPTIONAL
Type: `int`

Constant value: `268435456`
Description: Flag indicating that the operand may be omitted.

## Static Field: OPTIONAL_DEFAULT_VALUE
Type: `int`

Constant value: `0`
Description: Default value used for optional operands.

## Static Field: OPTIONAL_MASK
Type: `int`

Constant value: `0`
Description: Default mask used to test optional operands.

## Protected Method: decodeMemoryArea
- parameter: `code`, type: `byte[]`
- return type: `int`


## Method: getFlags
- return type: `int`

Description: Retrieve the builder flags.
return: builder flags

## Protected Method: getMemoryArea
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.IEncodedMemoryArea`


## Method: isOptional
- parameter: `value`, type: `long`
- return type: `boolean`

Description: Determine whether a decoded value represents an omitted optional operand.
parameter: value: decoded value
return: true if the value matches the optional default

