BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bdlt::MonthOfYear Struct Reference

#include <bdlt_monthofyear.h>

Public Types

enum  Enum {
  e_JAN = 1 , e_JANUARY = e_JAN , e_FEB , e_FEBRUARY = e_FEB ,
  e_MAR , e_MARCH = e_MAR , e_APR , e_APRIL = e_APR ,
  e_MAY , e_JUN , e_JUNE = e_JUN , e_JUL ,
  e_JULY = e_JUL , e_AUG , e_AUGUST = e_AUG , e_SEP ,
  e_SEPTEMBER = e_SEP , e_OCT , e_OCTOBER = e_OCT , e_NOV ,
  e_NOVEMBER = e_NOV , e_DEC , e_DECEMBER = e_DEC , JAN = e_JAN ,
  FEB = e_FEB , MAR = e_MAR , APR = e_APR , MAY = e_MAY ,
  JUN = e_JUN , JUL = e_JUL , AUG = e_AUG , SEP = e_SEP ,
  OCT = e_OCT , NOV = e_NOV , DEC = e_DEC , JANUARY = e_JANUARY ,
  FEBRUARY = e_FEBRUARY , MARCH = e_MARCH , APRIL = e_APRIL , JUNE = e_JUNE ,
  JULY = e_JULY , AUGUST = e_AUGUST , SEPTEMBER = e_SEPTEMBER , OCTOBER = e_OCTOBER ,
  NOVEMBER = e_NOVEMBER , DECEMBER = e_DECEMBER , BDET_JAN = e_JAN , BDET_JANUARY = e_JAN ,
  BDET_FEB = e_FEB , BDET_FEBRUARY = e_FEB , BDET_MAR = e_MAR , BDET_MARCH = e_MAR ,
  BDET_APR = e_APR , BDET_APRIL = e_APR , BDET_MAY = e_MAY , BDET_JUN = e_JUN ,
  BDET_JUNE = e_JUN , BDET_JUL = e_JUL , BDET_JULY = e_JUL , BDET_AUG = e_AUG ,
  BDET_AUGUST = e_AUG , BDET_SEP = e_SEP , BDET_SEPTEMBER = e_SEP , BDET_OCT = e_OCT ,
  BDET_OCTOBER = e_OCT , BDET_NOV = e_NOV , BDET_NOVEMBER = e_NOV , BDET_DEC = e_DEC ,
  BDET_DECEMBER = e_DEC
}
 Define the list of month-of-year values. More...
 
enum  { k_NUM_MONTHS = e_DEC , LENGTH = k_NUM_MONTHS , BDET_LENGTH = k_NUM_MONTHS }
 
typedef Enum Month
 

Static Public Member Functions

template<class STREAM >
static STREAM & bdexStreamIn (STREAM &stream, MonthOfYear::Enum &variable, int version)
 
template<class STREAM >
static STREAM & bdexStreamOut (STREAM &stream, MonthOfYear::Enum value, int version)
 
static int maxSupportedBdexVersion (int versionSelector)
 
static bsl::ostream & print (bsl::ostream &stream, MonthOfYear::Enum value, int level=0, int spacesPerLevel=4)
 
static const char * toAscii (MonthOfYear::Enum value)
 
static int maxSupportedBdexVersion ()
 

Detailed Description

This struct provides a namespace for enumerating month-of-year values. See Enum in the TYPES sub-section for details.

This struct:

  • supports a complete set of enumeration operations For terminology see bsldoc_glossary .

Member Typedef Documentation

◆ Month

Define an alias, Month, to the enum type, Enum defined by this component.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Define k_NUM_MONTHS to be the number of consecutively valued enumerators in the range [ e_JAN .. e_DEC ].

Enumerator
k_NUM_MONTHS 
LENGTH 
BDET_LENGTH 

◆ Enum

Enumerator
e_JAN 
e_JANUARY 
e_FEB 
e_FEBRUARY 
e_MAR 
e_MARCH 
e_APR 
e_APRIL 
e_MAY 
e_JUN 
e_JUNE 
e_JUL 
e_JULY 
e_AUG 
e_AUGUST 
e_SEP 
e_SEPTEMBER 
e_OCT 
e_OCTOBER 
e_NOV 
e_NOVEMBER 
e_DEC 
e_DECEMBER 
JAN 
FEB 
MAR 
APR 
MAY 
JUN 
JUL 
AUG 
SEP 
OCT 
NOV 
DEC 
JANUARY 
FEBRUARY 
MARCH 
APRIL 
JUNE 
JULY 
AUGUST 
SEPTEMBER 
OCTOBER 
NOVEMBER 
DECEMBER 
BDET_JAN 
BDET_JANUARY 
BDET_FEB 
BDET_FEBRUARY 
BDET_MAR 
BDET_MARCH 
BDET_APR 
BDET_APRIL 
BDET_MAY 
BDET_JUN 
BDET_JUNE 
BDET_JUL 
BDET_JULY 
BDET_AUG 
BDET_AUGUST 
BDET_SEP 
BDET_SEPTEMBER 
BDET_OCT 
BDET_OCTOBER 
BDET_NOV 
BDET_NOVEMBER 
BDET_DEC 
BDET_DECEMBER 

Member Function Documentation

◆ bdexStreamIn()

template<class STREAM >
STREAM & bdlt::MonthOfYear::bdexStreamIn ( STREAM &  stream,
MonthOfYear::Enum variable,
int  version 
)
static

Assign to the specified variable the value read from the specified input stream using the specified version format, and return a reference to stream. If stream is initially invalid, this operation has no effect. If version is not supported, variable is unaltered and stream is invalidated, but otherwise unmodified. If version is supported but stream becomes invalid during this operation, variable has an undefined, but valid, state. Note that no version is read from stream. See the bslx package-level documentation for more information on BDEX streaming of value-semantic types and containers.

◆ bdexStreamOut()

template<class STREAM >
STREAM & bdlt::MonthOfYear::bdexStreamOut ( STREAM &  stream,
MonthOfYear::Enum  value,
int  version 
)
inlinestatic

Write the value of the specified value, using the specified version format, to the specified output stream, and return a reference to stream. If stream is initially invalid, this operation has no effect. If version is not supported, stream is invalidated, but otherwise unmodified. Note that version is not written to stream. See the bslx package-level documentation for more information on BDEX streaming of value-semantic types and containers.

◆ maxSupportedBdexVersion() [1/2]

int bdlt::MonthOfYear::maxSupportedBdexVersion ( )
inlinestatic
Deprecated:
Use maxSupportedBdexVersion(int) instead.

Return the most current BDEX streaming version number supported by this struct.

◆ maxSupportedBdexVersion() [2/2]

int bdlt::MonthOfYear::maxSupportedBdexVersion ( int  versionSelector)
inlinestatic

Return the maximum valid BDEX format version, as indicated by the specified versionSelector, to be passed to the bdexStreamOut method. Note that it is highly recommended that versionSelector be formatted as "YYYYMMDD", a date representation. Also note that versionSelector should be a compile-time-chosen value that selects a format version supported by both externalizer and unexternalizer. See the bslx package-level documentation for more information on BDEX streaming of value-semantic types and containers.

◆ print()

static bsl::ostream & bdlt::MonthOfYear::print ( bsl::ostream &  stream,
MonthOfYear::Enum  value,
int  level = 0,
int  spacesPerLevel = 4 
)
static

Write the string representation of the specified enumeration value to the specified output stream, and return a reference to stream. Optionally specify an initial indentation level, whose absolute value is incremented recursively for nested objects. If level is specified, optionally specify spacesPerLevel, whose absolute value indicates the number of spaces per indentation level for this and all of its nested objects. If level is negative, suppress indentation of the first line. If spacesPerLevel is negative, format the entire output on one line, suppressing all but the initial indentation (as governed by level). See toAscii for what constitutes the string representation of a MonthOfYear::Enum value.

◆ toAscii()

static const char * bdlt::MonthOfYear::toAscii ( MonthOfYear::Enum  value)
static

Return the non-modifiable string representation corresponding to the specified enumeration value, if it exists, and a unique (error) string otherwise. The string representation of value matches the first 3 characters of its corresponding enumerator name with the "e_" prefix elided. For example:

static const char * toAscii(MonthOfYear::Enum value)
@ e_JANUARY
Definition bdlt_monthofyear.h:136

will print the following on standard output:

@ JAN
Definition bdlt_monthofyear.h:152

Note that specifying a value that does not match any of the enumerators will result in a string representation that is distinct from any of those corresponding to the enumerators, but is otherwise unspecified.


The documentation for this struct was generated from the following file: