You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by David N Bertoni <db...@locus.apache.org> on 2000/07/06 22:14:03 UTC

cvs commit: xml-xalan/c/src/PlatformSupport Factory.hpp

dbertoni    00/07/06 13:14:02

  Modified:    c/src/PlatformSupport Factory.hpp
  Log:
  Made a public version of the delete functor and changed the name of the protected one.
  
  Revision  Changes    Path
  1.5       +36 -5     xml-xalan/c/src/PlatformSupport/Factory.hpp
  
  Index: Factory.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/PlatformSupport/Factory.hpp,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- Factory.hpp	2000/03/07 16:12:21	1.4
  +++ Factory.hpp	2000/07/06 20:14:02	1.5
  @@ -136,16 +136,16 @@
   	 *
   	 */
   	#if defined(XALAN_NO_NAMESPACES)
  -	struct DeleteFactoryObjectFunctor : public unary_function<const FactoryObject*, void>
  +	struct ProtectedDeleteFactoryObjectFunctor : public unary_function<const FactoryObject*, void>
   	#else
  -	struct DeleteFactoryObjectFunctor : public std::unary_function<const FactoryObject*, void>
  +	struct ProtectedDeleteFactoryObjectFunctor : public std::unary_function<const FactoryObject*, void>
   	#endif
   	{
   	public:
   
  -		DeleteFactoryObjectFunctor(
  +		ProtectedDeleteFactoryObjectFunctor(
   			Factory&		theFactoryInstance,
  -			bool			fInReset = false) :
  +			bool			fInReset) :
   			m_factoryInstance(theFactoryInstance),
   			m_fInReset(fInReset)
   		{
  @@ -165,7 +165,7 @@
   		const bool	m_fInReset;
   	};
   
  -	friend struct DeleteFactoryObjectFunctor;
  +	friend struct ProtectedDeleteFactoryObjectFunctor;
   
   private:
   
  @@ -335,6 +335,37 @@
   	// Data members...
   	Factory*	m_factory;
       Type*		m_object;
  +};
  +
  +
  +
  +/**
  + *
  + * A public functor for use with stl algorithms.
  + *
  + */
  +#if defined(XALAN_NO_NAMESPACES)
  +struct DeleteFactoryObjectFunctor : public unary_function<const FactoryObject*, void>
  +#else
  +struct DeleteFactoryObjectFunctor : public std::unary_function<const FactoryObject*, void>
  +#endif
  +{
  +public:
  +
  +	DeleteFactoryObjectFunctor(Factory&		theFactoryInstance) :
  +		m_factoryInstance(theFactoryInstance)
  +	{
  +	}
  +
  +	result_type
  +	operator()(argument_type	theFactoryObject) const
  +	{
  +		m_factoryInstance.returnObject(theFactoryObject);
  +	}
  +
  +private:
  +
  +	Factory&	m_factoryInstance;
   };