Public Types | Public Member Functions | Static Public Attributes | Friends
zorba::internal::diagnostic::location Class Reference

A location hold the file location of an error. More...

#include <zorba/internal/diagnostic.h>

Collaboration diagram for zorba::internal::diagnostic::location:
Collaboration graph
[legend]

List of all members.

Public Types

typedef unsigned short column_type
 The column-number type.
typedef unsigned line_type
 The line-number type.

Public Member Functions

column_type column () const
 Gets the column number, if any.
column_type column_end () const
 Gets the ending column number, if any.
char const * file () const
 Gets the file name, if any.
line_type line () const
 Gets the line number, if any.
line_type line_end () const
 Gets the ending line number, if any.
 location ()
 Constructs a default (empty) location.
 location (char const *file, line_type line, column_type column=0, line_type line_end=0, column_type column_end=0)
 Constructs a location.
template<class StringType >
 location (StringType const &file, line_type line, column_type column=0, line_type line_end=0, column_type column_end=0)
 Constructs a location.
 operator bool () const
 Conversion to bool for testing whether this location has been set.
bool operator! () const
 Checks whether this location has not been set.
void set (char const *file, line_type line, column_type column=0, line_type line_end=0, column_type column_end=0)
 Sets the location information.

Static Public Attributes

static location const empty
 A empty instance for convenience.

Friends

void serialization::operator& (serialization::Archiver &, location &)

Detailed Description

A location hold the file location of an error.


Member Typedef Documentation

The column-number type.

Definition at line 57 of file internal/diagnostic.h.

The line-number type.

Definition at line 52 of file internal/diagnostic.h.


Constructor & Destructor Documentation

zorba::internal::diagnostic::location::location ( ) [inline]

Constructs a default (empty) location.

Definition at line 67 of file internal/diagnostic.h.

zorba::internal::diagnostic::location::location ( char const *  file,
line_type  line,
column_type  column = 0,
line_type  line_end = 0,
column_type  column_end = 0 
) [inline]

Constructs a location.

Parameters:
fileThe name of the file where the error occurred.
lineThe line number of the file where the expression that raises the error begins.
columnThe column number, if any, of the file where the expression that raises the error begins.
line_endThe end line number, if any, of the file where the expression causing the error ends.
column_endThe end column number, if any, of the file where the xpression causing the error ends.

Definition at line 83 of file internal/diagnostic.h.

template<class StringType >
zorba::internal::diagnostic::location::location ( StringType const &  file,
line_type  line,
column_type  column = 0,
line_type  line_end = 0,
column_type  column_end = 0 
) [inline]

Constructs a location.

Template Parameters:
StringTypeThe string type for file.
Parameters:
fileThe name of the file where the error occurred.
lineThe line number of the file where the error occurred.
columnThe column number, if any, of the file where the error occurred.
line_endThe end line number, if any, of the file where the expression causing the error ends.
column_endThe end column number, if any, of the file where the xpression causing the error ends.

Definition at line 107 of file internal/diagnostic.h.


Member Function Documentation

column_type zorba::internal::diagnostic::location::column ( ) const [inline]

Gets the column number, if any.

Returns:
Returns the column number or 0 if unset.

Definition at line 141 of file internal/diagnostic.h.

column_type zorba::internal::diagnostic::location::column_end ( ) const [inline]

Gets the ending column number, if any.

Returns:
Returns the column number or 0 if unset.

Definition at line 159 of file internal/diagnostic.h.

char const* zorba::internal::diagnostic::location::file ( ) const [inline]

Gets the file name, if any.

Returns:
Returns the file name or the empty string if unset.

Definition at line 123 of file internal/diagnostic.h.

line_type zorba::internal::diagnostic::location::line ( ) const [inline]

Gets the line number, if any.

Returns:
Returns the line number or 0 if unset.

Definition at line 132 of file internal/diagnostic.h.

line_type zorba::internal::diagnostic::location::line_end ( ) const [inline]

Gets the ending line number, if any.

Returns:
Returns the line number or 0 if unset.

Definition at line 150 of file internal/diagnostic.h.

zorba::internal::diagnostic::location::operator bool ( ) const [inline]

Conversion to bool for testing whether this location has been set.

Returns:
Returns true only if this location has been set.

Definition at line 168 of file internal/diagnostic.h.

bool zorba::internal::diagnostic::location::operator! ( ) const [inline]

Checks whether this location has not been set.

Returns:
Returns true only if this location has not been set.

Definition at line 177 of file internal/diagnostic.h.

void zorba::internal::diagnostic::location::set ( char const *  file,
line_type  line,
column_type  column = 0,
line_type  line_end = 0,
column_type  column_end = 0 
) [inline]

Sets the location information.

Parameters:
fileThe name of the file where the error occurred.
lineThe line number of the file where the error occurred.
columnThe column number, if any, of the file where the error occurred.

Definition at line 189 of file internal/diagnostic.h.


Friends And Related Function Documentation

void serialization::operator& ( serialization::Archiver &  ,
location  
) [friend]

Member Data Documentation

A empty instance for convenience.

Definition at line 62 of file internal/diagnostic.h.


The documentation for this class was generated from the following file:
blog comments powered by Disqus