[#BloombergLP-ball-UserFields]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::UserFields
:relfileprefix: ../../
:mrdocs:

This class implements a value&hyphen;semantic type for representing a sequence of (randomly accessible) user field values&period;

== Synopsis

Declared in `&lt;ball&lowbar;userfields&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class UserFields;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/ball/UserFields/ConstIterator.adoc[`ConstIterator`] 
| Constant iterator over the user field values in this object&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/ball/UserFields/2constructor-0d.adoc[`UserFields`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/ball/UserFields/operator_assign.adoc[`operator&equals;`] 
| Assign to this object the value of the specified `rhs` object, and return a reference providing modifiable access to this object&period;
| xref:BloombergLP/ball/UserFields/allocator.adoc[`allocator`] 
| Return the allocator used by this object to supply memory&period;
| xref:BloombergLP/ball/UserFields/append.adoc[`append`] 
| Append the specified `value` to this object&period;
| xref:BloombergLP/ball/UserFields/appendCharArray.adoc[`appendCharArray`] 
| Append the specified character&hyphen;array `value` to this object&period;
| xref:BloombergLP/ball/UserFields/appendDatetimeTz.adoc[`appendDatetimeTz`] 
| Append the specified datetime&hyphen;with&hyphen;timezone `value` to this object&period;
| xref:BloombergLP/ball/UserFields/appendDouble.adoc[`appendDouble`] 
| Append the specified floating&hyphen;point `value` to this object&period;
| xref:BloombergLP/ball/UserFields/appendInt64.adoc[`appendInt64`] 
| Append the specified 64&hyphen;bit integer `value` to this object&period;
| xref:BloombergLP/ball/UserFields/appendNull.adoc[`appendNull`] 
| Append an element having the unset value to this object&period;
| xref:BloombergLP/ball/UserFields/appendString.adoc[`appendString`] 
| Append the specified string `value` to this object&period;
| xref:BloombergLP/ball/UserFields/begin.adoc[`begin`] 
| Return an iterator to the first user field value&period;
| xref:BloombergLP/ball/UserFields/end.adoc[`end`] 
| Return an iterator providing non&hyphen;modifiable access to the past&hyphen;the&hyphen;end element in the sequence of user field values maintained by this object&period;
| xref:BloombergLP/ball/UserFields/length.adoc[`length`] 
| Return the number of user field values in this object&period;
| xref:BloombergLP/ball/UserFields/operator_subs-0a.adoc[`operator&lsqb;&rsqb;`] 
| Subscript operators
| xref:BloombergLP/ball/UserFields/print.adoc[`print`] 
| Format this object to the specified output `stream`&period;
| xref:BloombergLP/ball/UserFields/removeAll.adoc[`removeAll`] 
| Remove all of the user field values from this object&period; After this method is called `length` is 0&period;
| xref:BloombergLP/ball/UserFields/swap.adoc[`swap`] 
| Efficiently exchange the value of this object with the value of the specified `other` object&period;
| xref:BloombergLP/ball/UserFields/value-02.adoc[`value`] 
| Same as the preceding overload&period;
| xref:BloombergLP/ball/UserFields/2conversion.adoc[`operator BloombergLP::bslmf::NestedTraitDeclaration&lt;UserFields, UsesBslmaAllocator&gt;`] 
| Declare that this type uses a `bslma` allocator&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/ball/swap-0e.adoc[BloombergLP::ball::swap]`
| Swap the value of the specified `a` object with the value of the specified `b` object&period;
| `xref:BloombergLP/ball/operator_eq-010.adoc[BloombergLP::ball::operator&equals;&equals;]`
| Return `true` if the specified `lhs` and `rhs` objects have the same value, and `false` otherwise&period;
|===

== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/ball/operator_not_eq-07.adoc[`operator!&equals;`]
| Return `true` if `lhs` and `rhs` do not have the same value&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
