BDE 4.39.x Production Release
Loading...
Searching...
No Matches
bdlt::MonthOfYear Struct Reference

#include <bdlt_monthofyear.h>

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 .

See bdlt_monthofyear

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 , BSLA_DEPRECATED = e_JAN ,
  BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN ,
  BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN ,
  BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN ,
  BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN ,
  BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN ,
  BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN , BSLA_DEPRECATED = e_JAN
}
 
enum  { k_NUM_MONTHS = e_DEC , 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 ()
 

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 

◆ Enum

Define the list of month-of-year values.

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 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 
BSLA_DEPRECATED 

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
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
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

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

Deprecated:
Use maxSupportedBdexVersion(int) instead.

◆ 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
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:140

will print the following on standard output:

JAN
Note
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: