You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by ro...@locus.apache.org on 2000/01/05 23:16:27 UTC
cvs commit: xml-xerces/c/src/dom DOMStringImpl.hpp DOMString.cpp DOMString.hpp
robweir 00/01/05 14:16:27
Modified: c/Projects/Win32/VC6/xerces-all/XercesLib XercesLib.dsp
c/src/dom DOMString.cpp DOMString.hpp
Added: c/src/dom DOMStringImpl.hpp
Log:
Move DOMString implementation class declarations into a new
file: DOMStringImpl.hpp. Include this header in DOMString.hpp
for XML_DEBUG builds so the underlying character array will be
visible in the debugger. <ro...@lotus.com>
Revision Changes Path
1.5 +4 -0 xml-xerces/c/Projects/Win32/VC6/xerces-all/XercesLib/XercesLib.dsp
Index: XercesLib.dsp
===================================================================
RCS file: /home/cvs/xml-xerces/c/Projects/Win32/VC6/xerces-all/XercesLib/XercesLib.dsp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- XercesLib.dsp 1999/12/20 23:32:23 1.4
+++ XercesLib.dsp 2000/01/05 22:16:26 1.5
@@ -954,6 +954,10 @@
# End Source File
# Begin Source File
+SOURCE=..\..\..\..\..\src\dom\DOMStringImpl.hpp
+# End Source File
+# Begin Source File
+
SOURCE=..\..\..\..\..\src\dom\DStringPool.cpp
# End Source File
# Begin Source File
1.6 +9 -32 xml-xerces/c/src/dom/DOMString.cpp
Index: DOMString.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/dom/DOMString.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- DOMString.cpp 1999/12/17 02:09:41 1.5
+++ DOMString.cpp 2000/01/05 22:16:26 1.6
@@ -56,6 +56,12 @@
/**
* $Log: DOMString.cpp,v $
+ * Revision 1.6 2000/01/05 22:16:26 robweir
+ * Move DOMString implementation class declarations into a new
+ * file: DOMStringImpl.hpp. Include this header in DOMString.hpp
+ * for XML_DEBUG builds so the underlying character array will be
+ * visible in the debugger. <ro...@lotus.com>
+ *
* Revision 1.5 1999/12/17 02:09:41 andyh
* Fix bug in DOMString::insertData() that occured if the source
* and destination strings were the same and the orginal buffer had
@@ -91,10 +97,13 @@
#include <util/TransService.hpp>
#include "DOMString.hpp"
+#ifndef XML_DEBUG
+#include "DOMStringImpl.hpp"
+#endif
+
#include <assert.h>
#include <string.h>
-
//----------------------------------------------
@@ -102,17 +111,6 @@
// DOMStringData
//
//----------------------------------------------
-class DOMStringData
-{
-public:
- int fBufferLength;
- int fRefCount;
- XMLCh fData[1];
-
- static DOMStringData *allocateBuffer(int length);
- inline void addRef();
- inline void removeRef();
-};
void DOMStringData::removeRef()
{
@@ -156,26 +154,6 @@
//
//-----------------------------------------------------
-class DOMStringHandle
-{
-public:
- int fLength;
- int fRefCount;
- DOMStringData *fDSData;
-
- void *operator new( size_t sizeToAlloc);
- void operator delete( void *pvMem );
-private:
- static void *freeListPtr;
-public:
- static DOMStringHandle *createNewStringHandle(int bufLength);
- DOMStringHandle *cloneStringHandle();
- inline void addRef();
- inline void removeRef();
- ~DOMStringHandle() {};
-private:
- inline DOMStringHandle() {};
-};
//
1.4 +12 -0 xml-xerces/c/src/dom/DOMString.hpp
Index: DOMString.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/dom/DOMString.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- DOMString.hpp 1999/12/03 00:11:22 1.3
+++ DOMString.hpp 2000/01/05 22:16:26 1.4
@@ -56,6 +56,12 @@
/**
* $Log: DOMString.hpp,v $
+ * Revision 1.4 2000/01/05 22:16:26 robweir
+ * Move DOMString implementation class declarations into a new
+ * file: DOMStringImpl.hpp. Include this header in DOMString.hpp
+ * for XML_DEBUG builds so the underlying character array will be
+ * visible in the debugger. <ro...@lotus.com>
+ *
* Revision 1.3 1999/12/03 00:11:22 andyh
* Added DOMString.clone() to node parameters in and out of the DOM,
* where they had been missed.
@@ -81,7 +87,12 @@
#include <util/XML4CDefs.hpp>
+#ifdef XML_DEBUG
+#include "DOMStringImpl.hpp"
+#else
class DOMStringHandle;
+#endif
+
class DOM_NullPtr;
/**
1.1 xml-xerces/c/src/dom/DOMStringImpl.hpp
Index: DOMStringImpl.hpp
===================================================================
#ifndef DOMStringImpl_HEADER_GUARD_
#define DOMStringImpl_HEADER_GUARD_
/*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution,
* if any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "Xerces" and "Apache Software Foundation" must
* not be used to endorse or promote products derived from this
* software without prior written permission. For written
* permission, please contact apache\@apache.org.
*
* 5. Products derived from this software may not be called "Apache",
* nor may "Apache" appear in their name, without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation, and was
* originally based on software copyright (c) 1999, International
* Business Machines, Inc., http://www.ibm.com . For more information
* on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
/**
* $Log: DOMStringImpl.hpp,v $
* Revision 1.1 2000/01/05 22:16:26 robweir
* Move DOMString implementation class declarations into a new
* file: DOMStringImpl.hpp. Include this header in DOMString.hpp
* for XML_DEBUG builds so the underlying character array will be
* visible in the debugger. <ro...@lotus.com>
*
*
*/
//
// This file is part of the internal implementation of the C++ XML DOM.
// It should NOT be included or used directly by application programs.
//
#include <util/XML4CDefs.hpp>
class DOMStringData
{
public:
int fBufferLength;
int fRefCount;
XMLCh fData[1];
static DOMStringData *allocateBuffer(int length);
inline void addRef();
inline void removeRef();
};
class DOMStringHandle
{
public:
int fLength;
int fRefCount;
DOMStringData *fDSData;
void *operator new( size_t sizeToAlloc);
void operator delete( void *pvMem );
private:
static void *freeListPtr;
public:
static DOMStringHandle *createNewStringHandle(int bufLength);
DOMStringHandle *cloneStringHandle();
inline void addRef();
inline void removeRef();
~DOMStringHandle() {};
private:
inline DOMStringHandle() {};
};
#endif