LSSTApplications  19.0.0-14-gb0260a2+d60062ef16,20.0.0+1540ce6389,20.0.0+7c6b12c2f9,20.0.0+ae956f52c5,20.0.0+be870186d9,20.0.0+e2e26847c2,20.0.0-1-g10df615+7683e4f082,20.0.0-1-g253301a+7c6b12c2f9,20.0.0-1-g2b7511a+46a6078777,20.0.0-1-g3dda6ea+606b36f8c0,20.0.0-1-g4d801e7+901ee84527,20.0.0-1-g5b95a8c+a5fa15ec54,20.0.0-1-gb058bd0+46a6078777,20.0.0-1-gb88604f+acecce4127,20.0.0-1-gc96f8cb+61a4a056b1,20.0.0-1-gedffbd8+4f0e391d5e,20.0.0-10-g0891cd99+aadc987f3e,20.0.0-10-g9a20bd332+576ca7b471,20.0.0-17-gcdbda88+ed0d4927ab,20.0.0-2-g4dae9ad+61a4a056b1,20.0.0-2-g61b8584+85c46248f3,20.0.0-2-gb780d76+f45b7d88f4,20.0.0-2-gf072044+7c6b12c2f9,20.0.0-21-g9bbb7f7+61a4a056b1,20.0.0-22-gc512666+9eba1c4719,20.0.0-23-g8900aa8+68630f7098,20.0.0-3-g1653f94+85c46248f3,20.0.0-3-g4cc78c6+63636aeed8,20.0.0-3-g750bffe+e05f822de9,20.0.0-3-gbd60e8c+ff10c6d78d,20.0.0-32-g15a0e07c+ff1c9f120b,20.0.0-4-g97dc21a+68630f7098,20.0.0-4-gfea843c+f45b7d88f4,20.0.0-5-g357b56b+f45b7d88f4,20.0.0-6-g9a5b7a1+2c4171520d,20.0.0-61-g4de25fb+e4dd172200,20.0.0-7-gcda7bf1+85e953d7e4,w.2020.43
LSSTDataManagementBasePackage
Public Member Functions | Protected Attributes | List of all members
lsst.pex::policy::PolicyParser Class Referenceabstract

an abstract class for parsing serialized Policy data and loading it into a Policy object. More...

#include <PolicyParser.h>

Inheritance diagram for lsst.pex::policy::PolicyParser:
lsst.pex::policy::paf::PAFParser

Public Member Functions

 PolicyParser (Policy &policy, bool strict=true)
 Create a Parser attached to a policy object to be loaded. More...
 
virtual ~PolicyParser ()
 destroy this factory More...
 
bool isStrict ()
 return true if this parser will be strict in adhering to syntax rules. More...
 
void setStrict (bool strict)
 set whether this parser will be strict in adhering to syntax rules. More...
 
virtual int parse (std::istream &is)=0
 parse data from the input stream and load results into the attached Policy. More...
 
PolicygetPolicy ()
 return the policy object More...
 
const PolicygetPolicy () const
 

Protected Attributes

Policy_pol
 
bool _strict
 

Detailed Description

an abstract class for parsing serialized Policy data and loading it into a Policy object.

Definition at line 46 of file PolicyParser.h.

Constructor & Destructor Documentation

◆ PolicyParser()

lsst.pex::policy::PolicyParser::PolicyParser ( Policy policy,
bool  strict = true 
)
inline

Create a Parser attached to a policy object to be loaded.

Parameters
policythe Policy object to load the parsed data into
strictif true, be strict in reporting errors in file contents and syntax. If false, errors will be ignored if possible; often, such errors will result in some data not getting loaded.

Definition at line 56 of file PolicyParser.h.

56 : _pol(policy), _strict(strict) {}

◆ ~PolicyParser()

lsst.pex::policy::PolicyParser::~PolicyParser ( )
virtual

destroy this factory

Definition at line 43 of file PolicyParser.cc.

43 {}

Member Function Documentation

◆ getPolicy() [1/2]

Policy& lsst.pex::policy::PolicyParser::getPolicy ( )
inline

return the policy object

Definition at line 90 of file PolicyParser.h.

90 { return _pol; }

◆ getPolicy() [2/2]

const Policy& lsst.pex::policy::PolicyParser::getPolicy ( ) const
inline

Definition at line 91 of file PolicyParser.h.

91 { return _pol; }

◆ isStrict()

bool lsst.pex::policy::PolicyParser::isStrict ( )
inline

return true if this parser will be strict in adhering to syntax rules.

In this case, exceptions will be thrown if any syntax errors are detected. Otherwise, some syntax errors may be ignored.

Definition at line 68 of file PolicyParser.h.

68 { return _strict; }

◆ parse()

virtual int lsst.pex::policy::PolicyParser::parse ( std::istream is)
pure virtual

parse data from the input stream and load results into the attached Policy.

Parameters
isthe stream to read encoded data from
Returns
int the number of parameters values loaded. This does not include sub-Policy objects.

Implemented in lsst.pex::policy::paf::PAFParser.

◆ setStrict()

void lsst.pex::policy::PolicyParser::setStrict ( bool  strict)
inline

set whether this parser will be strict in adhering to syntax rules.

If set to true, exceptions will be thrown if any syntax errors are detected. Otherwise, some syntax errors may be ignored.

Definition at line 75 of file PolicyParser.h.

75 { _strict = strict; }

Member Data Documentation

◆ _pol

Policy& lsst.pex::policy::PolicyParser::_pol
protected

Definition at line 95 of file PolicyParser.h.

◆ _strict

bool lsst.pex::policy::PolicyParser::_strict
protected

Definition at line 96 of file PolicyParser.h.


The documentation for this class was generated from the following files:
lsst.pex::policy::PolicyParser::_strict
bool _strict
Definition: PolicyParser.h:96
lsst.pex::policy::PolicyParser::_pol
Policy & _pol
Definition: PolicyParser.h:95