ROSE  0.9.11.42
Public Types | Static Public Member Functions | Protected Member Functions | List of all members
Rose::BinaryAnalysis::Partitioner2::AddressIntervalParser Class Reference

Description

Parse an address interval.

An interval is specified in one of the following forms, where N and M are non-negative integers:

The integers can be specified in decimal, octal, hexadecimal, or binary using the usual C/C++ syntax.

Definition at line 165 of file Utility.h.

#include <Utility.h>

Inheritance diagram for Rose::BinaryAnalysis::Partitioner2::AddressIntervalParser:
Inheritance graph
[legend]
Collaboration diagram for Rose::BinaryAnalysis::Partitioner2::AddressIntervalParser:
Collaboration graph
[legend]

Public Types

typedef Sawyer::SharedPointer< AddressIntervalParserPtr
 Shared-ownership pointer to an AddressIntervalParser. More...
 
- Public Types inherited from Sawyer::CommandLine::ValueParser
typedef SharedPointer< ValueParserPtr
 Reference counting pointer for this class. More...
 

Static Public Member Functions

static Ptr instance ()
 
static Ptr instance (const Sawyer::CommandLine::ValueSaver::Ptr &valueSaver)
 
static std::string docString ()
 
static AddressInterval parse (const char *input, const char **rest)
 Parse an interval from a C string. More...
 
static AddressInterval parse (const std::string &input)
 Parse an interval from a C++ string. More...
 

Protected Member Functions

 AddressIntervalParser (const Sawyer::CommandLine::ValueSaver::Ptr &valueSaver)
 
- Protected Member Functions inherited from Sawyer::CommandLine::ValueParser
 ValueParser ()
 Constructor for derived classes. More...
 
 ValueParser (const ValueSaver::Ptr &valueSaver)
 Constructor for derived classes. More...
 

Additional Inherited Members

- Public Member Functions inherited from Sawyer::CommandLine::ValueParser
ParsedValue matchString (const std::string &)
 Parse the entire string and return a value. More...
 
ParsedValue match (Cursor &)
 Parse a value from the beginning of the specified string. More...
 
Ptr valueSaver (const ValueSaver::Ptr &f)
 Property: functor responsible for saving a parsed value in user storage. More...
 
const ValueSaver::Ptr valueSaver () const
 Property: functor responsible for saving a parsed value in user storage. More...
 
- Public Member Functions inherited from Sawyer::SharedObject
 SharedObject ()
 Default constructor. More...
 
 SharedObject (const SharedObject &)
 Copy constructor. More...
 
virtual ~SharedObject ()
 Virtual destructor. More...
 
SharedObjectoperator= (const SharedObject &)
 Assignment. More...
 
- Public Member Functions inherited from Sawyer::SharedFromThis< ValueParser >
SharedPointer< ValueParser > sharedFromThis ()
 Create a shared pointer from this. More...
 
SharedPointer< const ValueParser > sharedFromThis () const
 Create a shared pointer from this. More...
 

Member Typedef Documentation

Shared-ownership pointer to an AddressIntervalParser.

See Shared ownership.

Definition at line 172 of file Utility.h.

Member Function Documentation

static AddressInterval Rose::BinaryAnalysis::Partitioner2::AddressIntervalParser::parse ( const char *  input,
const char **  rest 
)
static

Parse an interval from a C string.

Tries to parse an interval from the input string, and if successful adjusts rest to point to the first character beyond what was parsed. If a syntax error occurs, then an std::runtime_error is thrown.

static AddressInterval Rose::BinaryAnalysis::Partitioner2::AddressIntervalParser::parse ( const std::string &  input)
static

Parse an interval from a C++ string.

Tries to parse an interval from the input string. The string may contain leading and trailing white space, but any extra characters will cause a syntax error. Syntax errors are reported by throwing std::runtime_error. Since the underlying parsing is done on C strings, this function is ill-defined when the input contains NUL bytes.


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