srchilite::StringDef Class Reference

represent a string for a language definition file's element More...

#include <stringdef.h>

Collaboration diagram for srchilite::StringDef:
[legend]

List of all members.

Public Member Functions

 StringDef (const std::string &s, const std::string &o)
 constructs a StringDef and store also the original representation
 StringDef (const std::string &s, bool doubleQuotes=false)
 constructs a StringDef and record whether it comes from a double quoted string.
const std::string toString () const
 return the string representation (after preprocessing)
const std::string toStringOriginal () const
 return the original representation (without any preprocessing); this is useful for printing errors
bool isDoubleQuoted () const
 whether this comes from a double quoted string
bool hasBackRef () const
void setBackRef (bool b)

Static Public Member Functions

static StringDefconcat (const StringDef *s1, const StringDef *s2)
 Given two StringDef produces a new StringDef (keeping properties such as hasBackRef).

Private Attributes

std::string stringdef
 the actual content
std::string orig
 the original representation (without any preprocessing)
bool doubleQuotedString
 whether the string was specified with double quotes
bool hasBackRef_
 whether this is contains a back reference to a matched subexpression

Detailed Description

represent a string for a language definition file's element


Constructor & Destructor Documentation

srchilite::StringDef::StringDef ( const std::string &  s,
const std::string &  o 
) [inline]

constructs a StringDef and store also the original representation

Parameters:
s the actual content
o the original representation
srchilite::StringDef::StringDef ( const std::string &  s,
bool  doubleQuotes = false 
) [inline]

constructs a StringDef and record whether it comes from a double quoted string.

Parameters:
s the actual content
doubleQuotes 

Member Function Documentation

StringDef * srchilite::StringDef::concat ( const StringDef s1,
const StringDef s2 
) [static]

Given two StringDef produces a new StringDef (keeping properties such as hasBackRef).

Parameters:
s1 
s2 
Returns:
the new StringDef
bool srchilite::StringDef::hasBackRef (  )  const [inline]
Returns:
whether this has a back reference
bool srchilite::StringDef::isDoubleQuoted (  )  const [inline]

whether this comes from a double quoted string

Returns:
whether this comes from a double quoted string
void srchilite::StringDef::setBackRef ( bool  b  )  [inline]
Parameters:
b 
const std::string srchilite::StringDef::toString (  )  const

return the string representation (after preprocessing)

Returns:
the string representation
const std::string srchilite::StringDef::toStringOriginal (  )  const [inline]

return the original representation (without any preprocessing); this is useful for printing errors

Returns:
the original representation

The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2