]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/include/dstream.hh
patch::: 1.3.140.jcn5
[lilypond.git] / flower / include / dstream.hh
index 752b78bca485d0717758345fb214fc25b46fc257..92111fbfb1cccfe3c1b65ad7d140b967c7a24752 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the Flower Library
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 #ifndef DSTREAM_HH
 
 #include "string.hh"
 
-const char eol= '\n';
 
-template<class K,class V>
-struct Assoc;
+const char eol= '\n';
 
 /**  Debug stream. 
    a class for providing debug output of nested structures,
-   with indents according to \{\}()[].
+   with indents according to \{\} ()[].
 
    One can turn on and off specific messages using the Assoc silent.
    This can be done automatically:
@@ -31,34 +29,41 @@ struct Assoc;
    
    TODO:
    make a baseclass for indentable streams.
+
+   JUNKME
   */
 class Dstream
 {
-    ostream *os_l_;
-    int indent_level_i_;
-    bool local_silence_b_;
-    String current_classname_str_;
-    void output (String s);
-    Assoc<String, bool> *silent_assoc_p_;
+  ostream *os_l_;
+  int indent_level_i_;
+  bool local_silence_b_;
+  bool default_silence_b_;
+  String current_classname_str_;
+  void output (String s);
+  Dictionary<bool> *silent_dict_p_;
+  
 public:
-    void clear_silence();
-    bool silent_b (String) const;
+  void clear_silence ();
+  bool silent_b (String) const;
     
-    /**
-      if rcfile == 0, then do not read any rc file.
-      */
-    Dstream (ostream *r, char const * rcfile);
-    virtual ~Dstream();
-    Dstream &identify_as (String s);
+  /**
+     if rcfile == 0, then do not read any rc file.
+  */
+  Dstream (ostream *r, char const * rcfile);
+  virtual ~Dstream ();
+  Dstream &identify_as (String s);
+
 
-/** Output a string via the Dstream. This is the only output
- interface. It delegates all conversion to String class.  */
-    Dstream &operator << (String s);
-    /**
-      Output memory locations.
-     */
-    Dstream &operator << (void const *);
-    Dstream &operator << (char const *);
+  Dstream &operator << (String);
+  Dstream &operator << (Real);
+  Dstream &operator << (int);  
+  Dstream &operator << (Rational);
+  Dstream &operator << (char);  
+  /**
+     Output memory locations.
+  */
+  Dstream &operator << (void const *);
+  Dstream &operator << (char const *);
 };
 #endif