Next: C++ location, Up: C++ Location Values [Contents][Index]
position
The type used to store line and column numbers. Defined as int
.
std::string*
file = nullptr, counter_type
line = 1, counter_type
col = 1)Create a position
denoting a given point. Note that file
is
not reclaimed when the position
is destroyed: memory managed must be
handled elsewhere.
std::string*
file = nullptr, counter_type
line = 1, counter_type
col = 1)Reset the position to the given values.
The name of the file. It will always be handled as a pointer, the parser will never duplicate nor deallocate it. As an experimental feature you may change it to ‘type*’ using ‘%define filename_type "type"’.
The line, starting at 1.
counter_type
height = 1)If height is not null, advance by height lines, resetting the column number. The resulting line number cannot be less than 1.
The column, starting at 1.
counter_type
width = 1)Advance by width columns, without changing the line number. The resulting column number cannot be less than 1.
counter_type
width)counter_type
width)counter_type
width)counter_type
width)Various forms of syntactic sugar for columns
.
const position&
that)const position&
that)Whether *this
and that
denote equal/different positions.
std::ostream&
o, const position&
p)Report p on o like this: ‘file:line.column’, or ‘line.column’ if file is null.
Next: C++ location, Up: C++ Location Values [Contents][Index]