]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/source-file.hh
Issue 4550 (2/2) Avoid "using namespace std;" in included files
[lilypond.git] / lily / include / source-file.hh
index 26bf6dbdb4810acb0df6b07a5f7a28bbf25d407e..46a5947cee722585cb98b7b207c72228ece2c2fb 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1999--2014 Jan Nieuwenhuizen <janneke@gnu.org>
+  Copyright (C) 1999--2015 Jan Nieuwenhuizen <janneke@gnu.org>
 
   LilyPond is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -25,7 +25,6 @@
 #include "smobs.hh"
 
 #include <iostream>
-using namespace std;
 
 /**
    class for reading and mapping a file.
@@ -35,45 +34,48 @@ using namespace std;
    get_line (), get_word () here.
 */
 
-class Source_file
+class Source_file : public Smob<Source_file>
 {
-  vector<char const *> newline_locations_;
-  istream *istream_;
-  vector<char> characters_;
+public:
+  int print_smob (SCM, scm_print_state *) const;
+  SCM mark_smob () const;
+  static const char type_p_name_[];
+  virtual ~Source_file ();
+private:
+  std::vector<char const *> newline_locations_;
+  std::istream *istream_;
+  std::vector<char> characters_;
   SCM str_port_;
 
   void load_stdin ();
   void init_port ();
   void init ();
 
-  DECLARE_SMOBS (Source_file);
 public:
-  Source_file (const string &fn);
-  Source_file (const string&, const string&);
+  Source_file (const std::string &fn);
+  Source_file (const std::string&, const std::string&);
 
   char const *c_str () const;
-  virtual string quote_input (char const *pos_str0) const;
-  istream *get_istream ();
+  virtual std::string quote_input (char const *pos_str0) const;
+  std::istream *get_istream ();
   bool contains (char const *pos_str0) const;
   int length () const;
   virtual int get_line (char const *pos_str0) const;
   void set_line (char const *pos_str0, int i);
-  string name_string () const;
-  string file_line_column_string (char const *str0) const;
+  std::string name_string () const;
+  std::string file_line_column_string (char const *str0) const;
 
-public:
   Slice line_slice (char const *pos_str0) const;
-  string line_string (char const *pos_str0) const;
+  std::string line_string (char const *pos_str0) const;
   void get_counts (char const *pos_str0, int *, int *, int *, int *) const;
 
   SCM get_port () const;
-  string name_;
+  std::string name_;
 
 protected:
   int line_offset_;
 };
 
-vector<char> gulp_file (const string &fn, int desired);
+std::vector<char> gulp_file (const std::string &fn, int desired);
 
 #endif /* SOURCE_FILE_HH */
-