CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
reco::parser::ExpressionSetter Struct Reference

#include <ExpressionSetter.h>

Public Member Functions

 ExpressionSetter (ExpressionPtr &expr, ExpressionStack &exprStack)
 
void operator() (const char *, const char *) const
 

Public Attributes

ExpressionPtrexpr_
 
ExpressionStackexprStack_
 

Detailed Description

Definition at line 18 of file ExpressionSetter.h.

Constructor & Destructor Documentation

◆ ExpressionSetter()

reco::parser::ExpressionSetter::ExpressionSetter ( ExpressionPtr expr,
ExpressionStack exprStack 
)
inline

Definition at line 19 of file ExpressionSetter.h.

19 : expr_(expr), exprStack_(exprStack) {}

Member Function Documentation

◆ operator()()

void ExpressionSetter::operator() ( const char *  begin,
const char *   
) const

Definition at line 9 of file ExpressionSetter.cc.

References Exception, expr_, and exprStack_.

9  {
10  if (exprStack_.empty())
11  throw Exception(begin)
12  << "Grammar error: When trying parse an expression, expression stack is empty! Please contact a developer.";
13  expr_ = exprStack_.back();
14 }

Member Data Documentation

◆ expr_

ExpressionPtr& reco::parser::ExpressionSetter::expr_

Definition at line 22 of file ExpressionSetter.h.

Referenced by operator()().

◆ exprStack_

ExpressionStack& reco::parser::ExpressionSetter::exprStack_

Definition at line 23 of file ExpressionSetter.h.

Referenced by operator()().