[#BloombergLP-bslfmt-TestSpecificationGenerator_Option] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslfmt.adoc[bslfmt]::TestSpecificationGenerator_Option :relfileprefix: ../../ :mrdocs: This class is a base class for `TestSpecificationGenerator` option nodes, which, when compiled into a list, represent the state of the generator. The payload and the process of changing this state are programmed into specific implementations of this interface. This class contains the basic functions of adding a new link to the options chain and finding the last link in the chain. == Synopsis Declared in `<bslfmt_testspecificationgenerator.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class TestSpecificationGenerator_Option; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslfmt/TestSpecificationGenerator_Option/2constructor.adoc[`TestSpecificationGenerator_Option`] [.small]#[constructor]# | Create an object, having no successor in the list of generator options. | xref:BloombergLP/bslfmt/TestSpecificationGenerator_Option/2destructor.adoc[`~TestSpecificationGenerator_Option`] [.small]#[destructor]# [.small]#[virtual]# | Destroy this object. | xref:BloombergLP/bslfmt/TestSpecificationGenerator_Option/lastOption.adoc[`lastOption`] | Return the pointer to the last item in the list of generator options (this object can also be one). | xref:BloombergLP/bslfmt/TestSpecificationGenerator_Option/nextOption.adoc[`nextOption`] | Return the pointer to the next item in the list of generator options if such an object exists and null otherwise.. | xref:BloombergLP/bslfmt/TestSpecificationGenerator_Option/nextState.adoc[`nextState`] [.small]#[virtual]# | Switch the state of this object to the next one. | xref:BloombergLP/bslfmt/TestSpecificationGenerator_Option/setNextOption.adoc[`setNextOption`] | Set the specified `nextOption` as a successor in the list of generator options. Use the specified `allocator` to supply memory. |=== == Derived Classes [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslfmt/TestSpecificationGenerator_BoolOption.adoc[`TestSpecificationGenerator_BoolOption`] | This class is an implementation of the `TestSpecificationGenerator_Option` for options that have only two states: they are either present or not. | xref:BloombergLP/bslfmt/TestSpecificationGenerator_TypedOption.adoc[`TestSpecificationGenerator_TypedOption`] | This class is an implementation of the `TestSpecificationGenerator_Option` for options that iterate through the states specified by the set of `t_TYPE` (template parameter) values. The state is determined by the interaction of two class fields: a flag indicating the presence of the option and a specific value for the option. If the flag indicates that the option is not present, the value of the second field is ignored. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#