libqalculate-0.9.8
Public Member Functions | List of all members
Variable Class Referenceabstract

Abstract base class for variables. More...

#include <Variable.h>

Inheritance diagram for Variable:
ExpressionItem KnownVariable UnknownVariable DynamicVariable

Public Member Functions

 Variable (string cat_, string name_, string title_="", bool is_local=true, bool is_builtin=false, bool is_active=true)
 
 Variable (const Variable *variable)
 
virtual ExpressionItemcopy () const =0
 
virtual void set (const ExpressionItem *item)
 
virtual int type () const
 
virtual int subtype () const
 
virtual bool isKnown () const =0
 
virtual bool representsPositive (bool=false)
 
virtual bool representsNegative (bool=false)
 
virtual bool representsNonNegative (bool=false)
 
virtual bool representsNonPositive (bool=false)
 
virtual bool representsInteger (bool=false)
 
virtual bool representsNumber (bool=false)
 
virtual bool representsRational (bool=false)
 
virtual bool representsReal (bool=false)
 
virtual bool representsComplex (bool=false)
 
virtual bool representsNonZero (bool=false)
 
virtual bool representsEven (bool=false)
 
virtual bool representsOdd (bool=false)
 
virtual bool representsUndefined (bool=false, bool=false, bool=false)
 
virtual bool representsBoolean ()
 
virtual bool representsNonMatrix ()
 
- Public Member Functions inherited from ExpressionItem
 ExpressionItem (string cat_, string name_, string title_="", string descr_="", bool is_local=true, bool is_builtin=false, bool is_active=true)
 
virtual bool destroy ()
 
bool isRegistered () const
 
void setRegistered (bool is_registered)
 For internal use.
 
virtual const string & name (bool use_unicode=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
 
virtual const string & referenceName () const
 
virtual const ExpressionNamepreferredName (bool abbreviation=false, bool use_unicode=false, bool plural=false, bool reference=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
 
virtual const ExpressionNamepreferredInputName (bool abbreviation=false, bool use_unicode=false, bool plural=false, bool reference=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
 
virtual const ExpressionNamepreferredDisplayName (bool abbreviation=false, bool use_unicode=false, bool plural=false, bool reference=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
 
virtual const ExpressionNamegetName (size_t index) const
 
virtual void setName (const ExpressionName &ename, size_t index=1, bool force=true)
 
virtual void setName (string sname, size_t index, bool force=true)
 
virtual void addName (const ExpressionName &ename, size_t index=0, bool force=true)
 
virtual void addName (string sname, size_t index=0, bool force=true)
 
virtual size_t countNames () const
 
virtual void clearNames ()
 
virtual void clearNonReferenceNames ()
 
virtual void removeName (size_t index)
 
virtual size_t hasName (const string &sname, bool case_sensitive=true) const
 
virtual size_t hasNameCaseSensitive (const string &sname) const
 
virtual const ExpressionNamefindName (int abbreviation=-1, int use_unicode=-1, int plural=-1, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
 
virtual const string & title (bool return_name_if_no_title=true, bool use_unicode=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
 
virtual void setTitle (string title_)
 
virtual const string & description () const
 
virtual void setDescription (string descr_)
 
virtual const string & category () const
 
virtual void setCategory (string cat_)
 
virtual bool hasChanged () const
 
virtual void setChanged (bool has_changed)
 
virtual bool isLocal () const
 
virtual bool setLocal (bool is_local=true, int will_be_active=-1)
 
virtual bool isBuiltin () const
 
virtual bool isApproximate () const
 
virtual void setApproximate (bool is_approx=true)
 
virtual int precision () const
 
virtual void setPrecision (int prec)
 
virtual bool isActive () const
 
virtual void setActive (bool is_active)
 
virtual bool isHidden () const
 
virtual void setHidden (bool is_hidden)
 
virtual int refcount () const
 
virtual void ref ()
 
virtual void unref ()
 
virtual void ref (ExpressionItem *o)
 
virtual void unref (ExpressionItem *o)
 
virtual ExpressionItemgetReferencer (size_t index=1) const
 
virtual bool changeReference (ExpressionItem *o_from, ExpressionItem *o_to)
 

Additional Inherited Members

- Protected Attributes inherited from ExpressionItem
string scat
 
string stitle
 
string sdescr
 
bool b_local
 
bool b_changed
 
bool b_builtin
 
bool b_approx
 
bool b_active
 
bool b_registered
 
bool b_hidden
 
bool b_destroyed
 
int i_ref
 
int i_precision
 
vector< ExpressionItem * > v_refs
 
vector< ExpressionNamenames
 

Detailed Description

Abstract base class for variables.

A variable is an alpha-numerical representation of a known or unknown value.

Member Function Documentation

virtual bool Variable::isKnown ( ) const
pure virtual

Returns if the variable has a known value (as oppossed to assumptions).

Returns
true if the variable is of class KnownVariable, false if UnknownVariable.

Implemented in KnownVariable, and UnknownVariable.

virtual bool Variable::representsPositive ( bool  = false)
inlinevirtual

Returns if the variable represents a positive value.

Reimplemented in DynamicVariable, KnownVariable, and UnknownVariable.

virtual int Variable::subtype ( ) const
inlinevirtual

Returns the subtype of the variable, corresponding to which subsubclass the object belongs to.

Returns
VariableSubtype.

Implements ExpressionItem.

Reimplemented in KnownVariable, and UnknownVariable.

References SUBTYPE_VARIABLE.

virtual int Variable::type ( ) const
inlinevirtual

Returns the type of the expression item, corresponding to which subclass the object belongs to.

Returns
ExpressionItemType.

Implements ExpressionItem.

References TYPE_VARIABLE.


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