UCommon
Public Member Functions | Protected Attributes
ucommon::Number Class Reference

A number manipulation class. More...

#include <numbers.h>

Inheritance diagram for ucommon::Number:
Inheritance graph
[legend]

Public Member Functions

const char * c_str () const
 Get string buffer representing the number. More...
 
long get () const
 Get value of string buffer as a long integer. More...
 
 Number (char *buffer, unsigned size)
 Create an instance of a number. More...
 
 operator char * () const
 Cast object as a string to retrieve buffer. More...
 
 operator long () const
 Cast string as long integer and get value of buffer. More...
 
bool operator!= (const long value) const
 
long operator() () const
 Get value of string buffer as expression of object. More...
 
long operator++ ()
 Increment the number object. More...
 
long operator+= (const long value)
 Add a value to the number. More...
 
long operator-- ()
 Decrement the number object. More...
 
long operator-= (const long value)
 Subtract a value from the number. More...
 
bool operator< (const long value) const
 
bool operator<= (const long value) const
 
long operator= (long value)
 Assign a value to the number. More...
 
long operator= (const Number &number)
 Assign another number to this number. More...
 
bool operator== (const long value) const
 
bool operator> (const long value) const
 
bool operator>= (const long value) const
 
void set (long value)
 Set string based on a new value. More...
 

Protected Attributes

char * buffer
 
unsigned size
 

Detailed Description

A number manipulation class.

This is used to extract, convert, and manage simple numbers that are represented in C ascii strings in a very quick and optimal way. This class modifies the string representation each time the value is changed. No math expressions or explicit comparison operators are supported for the Numbers class because these are best done by casting to long first.

Author
David Sugar dyfet.nosp@m.@ost.nosp@m.el.co.nosp@m.m number manipulation.

Definition at line 47 of file numbers.h.

Constructor & Destructor Documentation

◆ Number()

ucommon::Number::Number ( char *  buffer,
unsigned  size 
)

Create an instance of a number.

Parameters
bufferor NULL if created internally.
sizeof field if not null terminated.

Member Function Documentation

◆ c_str()

const char* ucommon::Number::c_str ( void  ) const
inline

Get string buffer representing the number.

Returns
string buffer.

Definition at line 71 of file numbers.h.

◆ get()

long ucommon::Number::get ( ) const

Get value of string buffer as a long integer.

Returns
long integer value of string buffer.

◆ operator char *()

ucommon::Number::operator char * ( ) const
inline

Cast object as a string to retrieve buffer.

Returns
string buffer of value.

Definition at line 101 of file numbers.h.

◆ operator long()

ucommon::Number::operator long ( ) const
inline

Cast string as long integer and get value of buffer.

Returns
long integer value of string buffer.

Definition at line 93 of file numbers.h.

◆ operator()()

long ucommon::Number::operator() ( void  ) const
inline

Get value of string buffer as expression of object.

Returns
long integer value of string buffer.

Definition at line 85 of file numbers.h.

◆ operator++()

long ucommon::Number::operator++ ( )

Increment the number object.

This rewrites the string buffer.

Returns
new value of number object.

◆ operator+=()

long ucommon::Number::operator+= ( const long  value)

Add a value to the number.

This rewrites the string buffer.

Parameters
valueto add.
Returns
new value of number object.

◆ operator--()

long ucommon::Number::operator-- ( )

Decrement the number object.

This rewrites the string buffer.

Returns
new value of number object.

◆ operator-=()

long ucommon::Number::operator-= ( const long  value)

Subtract a value from the number.

This rewrites the string buffer.

Parameters
valueto subtract.
Returns
new value of number object.

◆ operator=() [1/2]

long ucommon::Number::operator= ( long  value)

Assign a value to the number.

This rewrites the string buffer.

Parameters
valueto assign.
Returns
new value of number object assigned.

◆ operator=() [2/2]

long ucommon::Number::operator= ( const Number number)

Assign another number to this number.

Parameters
numberto assign to assign.
Returns
new value of number object assigned.

◆ set()

void ucommon::Number::set ( long  value)

Set string based on a new value.

Parameters
valueto set.

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