}
char *
-gulp_file (std::string filename, int *filesize)
+gulp_file (string filename, int *filesize)
{
/* "b" must ensure to open literally, avoiding text (CR/LF)
conversions. */
return str;
}
-Source_file::Source_file (std::string filename, std::string data)
+Source_file::Source_file (string filename, string data)
{
name_ = filename;
istream_ = 0;
newline_locations_.push_back (contents_str0_ + i);
}
-Source_file::Source_file (std::string filename_string)
+Source_file::Source_file (string filename_string)
{
name_ = filename_string;
istream_ = 0;
return istream_;
}
-std::string
+string
Source_file::file_line_column_string (char const *context_str0) const
{
if (!c_str ())
}
}
-std::string
+string
Source_file::quote_input (char const *pos_str0) const
{
if (!contains (pos_str0))
int l, ch, col;
get_counts (pos_str0, &l, &ch, &col);
- std::string line = line_string (pos_str0);
- std::string context = line.substr (0, ch)
+ string line = line_string (pos_str0);
+ string context = line.substr (0, ch)
+ to_string ('\n')
+ to_string (' ', col)
+ line.substr (ch, line.length()-ch);
return context;
}
-std::string
+string
Source_file::name_string () const
{
return map_file_name (name_);
return Slice (begin_str0 - data_str0, end_str0 - data_str0);
}
-std::string
+string
Source_file::line_string (char const *pos_str0) const
{
if (!contains (pos_str0))
Slice line = line_slice (pos_str0);
char const *data_str0 = c_str ();
- return std::string (data_str0 + line[LEFT], line.length ());
+ return string (data_str0 + line[LEFT], line.length ());
}
void
char const *line_start = (char const *)data + line[LEFT];
ssize left = (char const *) pos_str0 - line_start;
- std::string line_begin (line_start, left);
+ string line_begin (line_start, left);
char const *line_chars = line_begin.c_str ();
*column = 0;
if (!newline_locations_.size ())
return 1;
- int lo = 0;
- int hi = newline_locations_.size ();
+ vsize lo = 0;
+ vsize hi = newline_locations_.size ();
if (newline_locations_[lo] > pos_str0)
return 1;
return hi;
binary_search_bounds (newline_locations_,
- pos_str0,
- Link_array<char>::default_compare,
+ (char const*&)pos_str0,
+ default_compare,
&lo, &hi);
if (*pos_str0 == '\n')
return old_pos;
}
-std::string
+string
Source_file::get_string (int n)
{
- std::string str = std::string ((char const *)forward_str0 (n), n);
+ string str = string ((char const *)forward_str0 (n), n);
return str;
}