loading...
ObjectStream: Generating Stream-Based Object I/O for C++
Beijing, China September 01-September 01
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TOOLS.1997.713529Technology of Object-Oriented Languag ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Tyng-Ruey Chuang, Academia Sinica
Chuan-Chieh Jung, Academia Sinica
Wen-Min Kuan, Academia Sinica
Y.S. Kuo, Academia Sinica
We describe the design and implementation of ObjectStream, a system for automatic generation of stream I/O primitives for complex C++ objects. The system consists of a parser-based program generator and a generic object I/O library. The program generator pre-processes C++ class declarations to produce class-specific routines that, when executed with application programs, assists the class-neutral generic library to perform I/O operations for objects of the pre-processed classes.ObjectStream is novel in that it is non-intrusive. It lets programmers keep the original class declarations for application development, without requiring the classes to be modified for I/O or to be derived from a persistent base class. This makes easy the task of managing application source code, and ensures compatibility of objects produced with and without the added I/O capability. The implementation of ObjectStream is compiler- and machine-independent, and its operation requires little guidance from the programmers. We describe in this paper the motivations behind ObjectStream, our development strategies, and several interesting implementation issues. A working example is included to illustrate the ObjectStream system.
Index Terms:
C++, Code Generation, Object Input/Output, Software Development Tool.
Citation:
Tyng-Ruey Chuang, Chuan-Chieh Jung, Wen-Min Kuan, Y.S. Kuo, "ObjectStream: Generating Stream-Based Object I/O for C++," tools, pp.70, Technology of Object-Oriented Languages and Systems-Tools - 24, 1997
Usage of this product signifies your acceptance of the Terms of Use.