Frobby  0.9.5
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
DataType Class Reference

The intention of this class is to describe the different kinds of mathematical structures that Frobby supports, such as a monomial ideal or a polynomial. More...

#include <DataType.h>

Public Member Functions

const char * getName () const
 Returns the name of the structure. More...
 
bool isNull () const
 Returns true if this object was returned by getNullType(). More...
 
bool operator== (const DataType &type) const
 
bool operator!= (const DataType &type) const
 

Static Public Member Functions

static const DataTypegetNullType ()
 Returns the one and only instance for null. More...
 
static const DataTypegetMonomialIdealType ()
 Returns the one and only instance for monomial ideals. More...
 
static const DataTypegetPolynomialType ()
 Returns the one and only instance for polynomials. More...
 
static const DataTypegetSatBinomIdealType ()
 Returns the one and only instance for saturated binomial ideals. More...
 
static const DataTypegetMonomialIdealListType ()
 Returns the one and only instance for monomial ideal lists. More...
 
static vector< const DataType * > getTypes ()
 Returns a vector of all types except null. More...
 

Private Member Functions

 DataType (const DataType &)
 Private to avoid copies. More...
 
void operator= (const DataType &)
 Private to avoid copies. More...
 
 DataType (const char *name)
 Private to ensure only one instance of each kind. More...
 

Private Attributes

const char * _name
 

Detailed Description

The intention of this class is to describe the different kinds of mathematical structures that Frobby supports, such as a monomial ideal or a polynomial.

This is useful for the IO subsystem.

There is only one instance of each kind, so pointer equality is the same as equality.

Definition at line 29 of file DataType.h.

Constructor & Destructor Documentation

◆ DataType() [1/2]

DataType::DataType ( const DataType )
private

Private to avoid copies.

◆ DataType() [2/2]

DataType::DataType ( const char *  name)
private

Private to ensure only one instance of each kind.

Definition at line 20 of file DataType.cpp.

Member Function Documentation

◆ getMonomialIdealListType()

const DataType & DataType::getMonomialIdealListType ( )
static

Returns the one and only instance for monomial ideal lists.

Definition at line 54 of file DataType.cpp.

◆ getMonomialIdealType()

const DataType & DataType::getMonomialIdealType ( )
static

Returns the one and only instance for monomial ideals.

Definition at line 45 of file DataType.cpp.

◆ getName()

const char * DataType::getName ( ) const

Returns the name of the structure.

Definition at line 24 of file DataType.cpp.

◆ getNullType()

const DataType & DataType::getNullType ( )
static

Returns the one and only instance for null.

Definition at line 40 of file DataType.cpp.

◆ getPolynomialType()

const DataType & DataType::getPolynomialType ( )
static

Returns the one and only instance for polynomials.

Definition at line 50 of file DataType.cpp.

◆ getSatBinomIdealType()

const DataType & DataType::getSatBinomIdealType ( )
static

Returns the one and only instance for saturated binomial ideals.

Definition at line 59 of file DataType.cpp.

◆ getTypes()

vector< const DataType * > DataType::getTypes ( )
static

Returns a vector of all types except null.

Definition at line 64 of file DataType.cpp.

◆ isNull()

bool DataType::isNull ( ) const

Returns true if this object was returned by getNullType().

Definition at line 28 of file DataType.cpp.

◆ operator!=()

bool DataType::operator!= ( const DataType type) const

Definition at line 36 of file DataType.cpp.

◆ operator=()

void DataType::operator= ( const DataType )
private

Private to avoid copies.

◆ operator==()

bool DataType::operator== ( const DataType type) const

Definition at line 32 of file DataType.cpp.

Member Data Documentation

◆ _name

const char* DataType::_name
private

Definition at line 68 of file DataType.h.


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