+/*
+ source-file.hh -- declare Source_file
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1999--2005 Jan Nieuwenhuizen <janneke@gnu.org>
+*/
#ifndef SOURCE_FILE_HH
#define SOURCE_FILE_HH
#include <iostream>
-#include "flower-proto.hh"
#include "string.hh"
-#include "interval.hh"
#include "protected-scm.hh"
+#include "parray.hh"
/**
class for reading and mapping a file.
char const* to_str0 () const;
virtual String error_string (char const* pos_str0 ) const;
std::istream * get_istream ();
- bool in_b (char const* pos_str0 ) const;
+ bool contains (char const* pos_str0 ) const;
int length () const;
virtual int get_line (char const* pos_str0 ) const;
String name_string () const;
int get_char (char const* pos_str0) const;
/*
- DOCUMENT-ME
+ JUNKME.
+
+ This thing doubles as a file-storage/file-iterator object.
*/
char const* pos_str0_;
- SCM get_port()const { return str_port_; }
+ SCM get_port () const { return str_port_; }
+ String name_;
+
private:
- String name_string_;
+ Link_array<char> newline_locations_;
std::istream* istream_;
char * contents_str0_;
int length_;
void init_port ();
Protected_scm str_port_;
-
};
-char * gulp_file (String fn, int *len);
+char *gulp_file (String fn, int *len);
-#endif // SOURCE_FILE_HH //
+#endif /* SOURCE_FILE_HH */