NumericTypeConstructor.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2001-2006
00003  *     DecisionSoft Limited. All rights reserved.
00004  * Copyright (c) 2004-2006
00005  *     Progress Software Corporation. All rights reserved.
00006  * Copyright (c) 2004-2006
00007  *     Oracle. All rights reserved.
00008  *
00009  * See the file LICENSE for redistribution information.
00010  *
00011  * $Id: NumericTypeConstructor.hpp,v 1.3 2006/11/17 18:08:07 jpcs Exp $
00012  */
00013 
00014 #ifndef _NUMERICTYPECONSTUCTOR_HPP
00015 #define _NUMERICTYPECONSTUCTOR_HPP
00016 
00017 #include <xqilla/items/ItemConstructor.hpp>
00018 #include <xercesc/util/XercesDefs.hpp>
00019 #include <xqilla/ast/StaticType.hpp>
00020 #include <xqilla/mapm/m_apm.h>
00021 
00022 class XQILLA_API NumericTypeConstructor : public ItemConstructor {
00023 public:
00024   NumericTypeConstructor(const XMLCh* typeURI,
00025                          const XMLCh* typeName,
00026                          const MAPM& value,
00027                          AnyAtomicType::AtomicObjectType primitiveType,
00028                          XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *mm);
00029   virtual ~NumericTypeConstructor() {}
00030 
00031   virtual const StaticType &getStaticType() const { return _sType; }
00032 
00033   virtual Item::Ptr createItem(const DynamicContext* context) const;
00034   virtual std::string asString(const DynamicContext* context) const;
00035 
00036   virtual const XMLCh* getTypeURI() const { return _typeURI; }
00037   virtual const XMLCh* getTypeName() const { return _typeName; }
00038 
00039 private:
00040   const XMLCh *_typeURI;
00041   const XMLCh *_typeName;
00042   M_APM_struct _value;
00043   AnyAtomicType::AtomicObjectType _primitiveType;
00044   StaticType _sType;
00045 };
00046 
00047 #endif
00048 

Generated on Fri Jan 19 15:30:53 2007 for XQilla Simple API by  doxygen 1.4.6