yast2-core
Public Member Functions | Private Member Functions | Private Attributes
YELocale Class Reference

#include <YExpression.h>

Inheritance diagram for YELocale:
YCode Rep

List of all members.

Public Member Functions

 YELocale (const char *singular, const char *plural, YCodePtr count, const char *textdomain)
 YELocale (bytecodeistream &str)
 ~YELocale ()
virtual ykind kind () const
string toString () const
YCPValue evaluate (bool cse=false)
std::ostream & toStream (std::ostream &str) const
std::ostream & toXml (std::ostream &str, int indent) const
constTypePtr type () const
- Public Member Functions inherited from YCode
 YCode ()
virtual ~YCode ()
virtual bool isConstant () const
bool isError () const
virtual bool isStatement () const
virtual bool isBlock () const
virtual bool isReferenceable () const
- Public Member Functions inherited from Rep
 Rep ()
 Rep (const Rep &)
Repoperator= (const Rep &)
virtual ~Rep ()
void ref () const
void unref () const
unsigned refCount () const
virtual const char * repName () const
virtual std::ostream & dumpOn (std::ostream &str) const

Private Member Functions

 REP_BODY (YELocale)

Private Attributes

const char * m_singular
const char * m_plural
YCodePtr m_count
YLocale::t_uniquedomains::const_iterator m_domain

Additional Inherited Members

- Public Types inherited from YCode
enum  ykind {
  yxError = 0, ycVoid, ycBoolean, ycInteger,
  ycFloat, ycString, ycByteblock, ycPath,
  ycSymbol, ycList, ycMap, ycTerm,
  ycEntry, ycConstant, ycLocale, ycFunction,
  yePropagate, yeUnary, yeBinary, yeTriple,
  yeCompare, yeLocale, yeList, yeMap,
  yeTerm, yeIs, yeBracket, yeBlock,
  yeReturn, yeVariable, yeBuiltin, yeFunction,
  yeReference, yeFunctionPointer, yeExpression, ysTypedef,
  ysVariable, ysFunction, ysAssign, ysBracket,
  ysIf, ysWhile, ysDo, ysRepeat,
  ysExpression, ysReturn, ysBreak, ysContinue,
  ysTextdomain, ysInclude, ysFilename, ysImport,
  ysBlock, ysSwitch, ysStatement, yiBreakpoint
}
- Static Public Member Functions inherited from YCode
static string toString (ykind kind)
- Static Public Member Functions inherited from Rep
static void ref (const Rep *obj_r)
static void unref (const Rep *obj_r)

Constructor & Destructor Documentation

YELocale::YELocale ( const char *  singular,
const char *  plural,
YCodePtr  count,
const char *  textdomain 
)

References YLocale::domains, and m_domain.

YELocale::YELocale ( bytecodeistream str)
YELocale::~YELocale ( )

References m_plural, and m_singular.


Member Function Documentation

YCPValue YELocale::evaluate ( bool  cse = false)
virtual

Execute YCP code to get the resulting YCPValue. Every inherited class of YCode should reimplement this method.

Returns:
YCPValue after executing the code
Parameters:
cseshould the evaluation be done for parse time evaluation (i.e. constant subexpression elimination)

Reimplemented from YCode.

References YCPElement::isNull(), m_count, m_domain, m_plural, m_singular, toString(), y2debug, and ycp2error.

virtual ykind YELocale::kind ( ) const
inlinevirtual

Kind of this YCode. This method must be reimplemented in the inherited classes.

Returns:
the YCode kind

Implements YCode.

References YCode::yeLocale.

YELocale::REP_BODY ( YELocale  )
private
std::ostream & YELocale::toStream ( std::ostream &  str) const
virtual

Write YCP code to a byte stream (bytecode implementation). Every class inheriting from YCode must reimplement this method.

Parameters:
strbyte stream to store into
Returns:
byte stream for chaining writing bytecode (str)

Implements YCode.

References m_count, m_domain, m_plural, m_singular, and Bytecode::writeCharp().

string YELocale::toString ( void  ) const
virtual

Return ASCII represtation of this YCP code.

Returns:
ASCII string representation

Reimplemented from YCode.

References m_count, m_plural, and m_singular.

Referenced by evaluate().

std::ostream & YELocale::toXml ( std::ostream &  str,
int  indent 
) const
virtual

Write YCP code as XML representation. Every class inheriting from YCode must reimplement this method.

Parameters:
strstring stream to store into
indendindentation level for pretty print
Returns:
string stream for chaining writing XML (str)

Implements YCode.

References m_count, m_domain, m_plural, m_singular, str, and Xmlcode::xmlify().

constTypePtr YELocale::type ( ) const
inlinevirtual

Return type of this YCP code (interesting mostly for function calls).

Returns:
type of the value to be returned after calling evaluate

Reimplemented from YCode.

References Type::Locale.


Member Data Documentation

YCodePtr YELocale::m_count
private
YLocale::t_uniquedomains::const_iterator YELocale::m_domain
private

Referenced by evaluate(), toStream(), toXml(), and YELocale().

const char* YELocale::m_plural
private
const char* YELocale::m_singular
private

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

Generated on a sunny day for yast2-core by doxygen 1.8.1