org.eclipse.cdt.core.options

## Class BaseOption<V>

- java.lang.Object
- - org.eclipse.cdt.core.options.BaseOption<V>

Type Parameters:
  `V` - the value type for the option

All Implemented Interfaces:
  OptionMetadata<V>

    public final class BaseOption<V>
    extends Object
    implements OptionMetadata<V>

The base implementation for option metadata

See Also:
  `OptionMetadata`, `OptionStorage`

### Constructor Summary

Constructors
Constructor and Description
`BaseOption(Class<V> clazz, String identifier, V defaultValue, String name)` Created an instance of BaseOption using name as description
`BaseOption(Class<V> clazz, String identifier, V defaultValue, String name, String description)` Created an instance of BaseOption of all the the given parameters

### Method Summary

All Methods Instance Methods Concrete Methods
`V` `defaultValue()` The default value for the option.
`String` `description()` Widely describes the option purpose, intended to be used in UI.
`String` `identifer()` The option identifier to use as a key to access the option value.
`String` `name()` Briefly describes the option purpose, intended to be used in UI.
`Class<V>` `valueClass()` The type of option value needed to perform type checks.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### BaseOption

    public BaseOption(Class<V> clazz,
                      String identifier,
                      V defaultValue,
                      String name)

Created an instance of BaseOption using name as description

Parameters:
  `clazz` - the value type of the option, must not be `null`
  `identifier` - the identifier of the option, must not be `null`
  `defaultValue` - the default value of the option, must not be `null`
  `name` - the name of the option, must not be `null`
See Also:
  `BaseOption(Class, String, Object, String, String)`

#### BaseOption

    public BaseOption(Class<V> clazz,
                      String identifier,
                      V defaultValue,
                      String name,
                      String description)

Created an instance of BaseOption of all the the given parameters

Parameters:
  `clazz` - the value type of the option, must not be `null`
  `identifier` - the identifier of the option, must not be `null`
  `defaultValue` - the default value of the option, must not be `null`
  `name` - the name of the option, must not be `null`
  `description` - the description of the option, must not be `null`
See Also:
  `BaseOption(Class, String, Object, String)`

### Method Detail

#### identifer

    public String identifer()

Description copied from interface: `OptionMetadata`
The option identifier to use as a key to access the option value. Must not be `null`.

Specified by:
  `identifer` in interface `OptionMetadata<V>`
Returns:
  the identifier

#### defaultValue

    public V defaultValue()

Description copied from interface: `OptionMetadata`
The default value for the option. Must not be `null`.

Specified by:
  `defaultValue` in interface `OptionMetadata<V>`
Returns:
  the option's default value

#### name

    public String name()

Description copied from interface: `OptionMetadata`
Briefly describes the option purpose, intended to be used in UI. Must not be `null` and should be localized. Should not be blank.

Specified by:
  `name` in interface `OptionMetadata<V>`
Returns:
  the option's name

#### description

    public String description()

Description copied from interface: `OptionMetadata`
Widely describes the option purpose, intended to be used in UI. Must not be `null` and should be localized. May be blank.

Specified by:
  `description` in interface `OptionMetadata<V>`
Returns:
  the option's description

#### valueClass

    public Class<V> valueClass()

Description copied from interface: `OptionMetadata`
The type of option value needed to perform type checks. Must not be `null`.

Specified by:
  `valueClass` in interface `OptionMetadata<V>`
Returns:
  the value class