MapType Class Reference

YCP type Map <keytype, valuetype>. More...

#include <Type.h>

Inheritance diagram for MapType:

Type List of all members.

Public Member Functions

string toString () const
bool isBasetype () const
constTypePtr matchFlex (constTypePtr type, unsigned int number=0) const
int match (constTypePtr expected) const
bool equals (constTypePtr expected) const
constTypePtr commontype (constTypePtr type) const
constTypePtr detailedtype (constTypePtr type) const
bool canCast (constTypePtr to) const
TypePtr clone () const
constTypePtr unflex (constTypePtr type, unsigned int number=0) const
constTypePtr keytype () const
constTypePtr valuetype () const
std::ostream & toStream (std::ostream &str) const
 MapType (constTypePtr key=Type::Unspec, constTypePtr value=Type::Unspec, bool as_const =false)
 MapType (bytecodeistream &str)
 ~MapType ()

Private Member Functions

 REP_BODY (MapType)

Private Attributes

const constTypePtr m_keytype
const constTypePtr m_valuetype

Detailed Description

YCP type Map <keytype, valuetype>.


Constructor & Destructor Documentation

MapType::MapType ( constTypePtr  key = Type::Unspec,
constTypePtr  value = Type::Unspec,
bool  as_const = false 
)

MapType::MapType ( bytecodeistream str  ) 

MapType::~MapType (  ) 


Member Function Documentation

MapType::REP_BODY ( MapType   )  [private]

string MapType::toString (  )  const [virtual]

Converts a type code to its YCP notation.

Reimplemented from Type.

bool MapType::isBasetype (  )  const [inline, virtual]

Reimplemented from Type.

constTypePtr MapType::matchFlex ( constTypePtr  type,
unsigned int  number = 0 
) const [virtual]

Reimplemented from Type.

int MapType::match ( constTypePtr  expected  )  const [virtual]

check match with expected type <0: no match, ==0: full match, >0: propagated match

Reimplemented from Type.

bool MapType::equals ( constTypePtr  expected  )  const [virtual]

check equality of the types, without any assumptions like any == unspec

Reimplemented from Type.

constTypePtr MapType::commontype ( constTypePtr  type  )  const [virtual]

Finds a type that can hold both given types This should be the narrowest such type - TODO

Reimplemented from Type.

constTypePtr MapType::detailedtype ( constTypePtr  type  )  const [virtual]

Finds a type which contains most information

Reimplemented from Type.

bool MapType::canCast ( constTypePtr  to  )  const [virtual]

check, if the type can be casted (at runtime considered to be - similar to dynamic_cast) to another type

Reimplemented from Type.

TypePtr MapType::clone (  )  const [virtual]

clone this type

Reimplemented from Type.

constTypePtr MapType::unflex ( constTypePtr  type,
unsigned int  number = 0 
) const [virtual]

replace any 'FlexT' (number == 0) or 'NFlexT' (number != 0) with 'type'

Reimplemented from Type.

constTypePtr MapType::keytype (  )  const [inline]

constTypePtr MapType::valuetype (  )  const [inline]

std::ostream & MapType::toStream ( std::ostream &  str  )  const [virtual]

write out to stream

Reimplemented from Type.


Member Data Documentation

const constTypePtr MapType::m_keytype [private]

const constTypePtr MapType::m_valuetype [private]


The documentation for this class was generated from the following files:
Generated on Tue Nov 6 01:20:22 2007 for yast2-core by  doxygen 1.5.0