Jpp 19.3.0-rc.2
the software that should make you happy
Loading...
Searching...
No Matches
JLANG::JEquation_t Struct Reference

Auxiliary data structure to read equations. More...

#include <JEquation_t.hh>

Inheritance diagram for JLANG::JEquation_t:
JLANG::JEquation

Public Member Functions

const std::string & getKey () const
 Get key.
 
const char getSeparator () const
 Get separator.
 
const std::string & getValue () const
 Get value.
 
JEquationsetEquation (const std::string &buffer, const JEquationFacet &facet)
 Set equation.
 
JEquationsetEquation (const JEquationFacet &facet)
 Set this equation to its value.
 
std::string toString () const
 Convert equation to string.
 

Static Public Member Functions

static JEquationParametersgetEquationParameters ()
 Get equation parameters.
 
static void setEquationParameters (const JEquationParameters &equation)
 Set equation parameters.
 
template<class T >
static equation_type< T > make_equation (const std::string &key, const T &value)
 Auxiliary method to create equation type.
 
static JEquation valueOf (const std::string &buffer, const JEquationFacet &facet)
 Extract equation.
 

Protected Attributes

JString key
 
char sep
 
JString value
 

Friends

std::istream & operator>> (std::istream &in, JEquation_t &equation)
 Read equation from input stream.
 

Detailed Description

Auxiliary data structure to read equations.

Definition at line 23 of file JEquation_t.hh.

Member Function Documentation

◆ getEquationParameters()

static JEquationParameters & JLANG::JEquation_t::getEquationParameters ( )
inlinestatic

Get equation parameters.

Returns
equation parameters

Definition at line 31 of file JEquation_t.hh.

32 {
33 static JEquationParameters equation("=", ",", "./", "#");
34
35 return equation;
36 }

◆ setEquationParameters()

static void JLANG::JEquation_t::setEquationParameters ( const JEquationParameters & equation)
inlinestatic

Set equation parameters.

Parameters
equationequation parameters

Definition at line 44 of file JEquation_t.hh.

45 {
46 getEquationParameters() = equation;
47 }
static JEquationParameters & getEquationParameters()
Get equation parameters.

◆ make_equation()

template<class T >
static equation_type< T > JLANG::JEquation::make_equation ( const std::string & key,
const T & value )
inlinestaticinherited

Auxiliary method to create equation type.

Parameters
keykey
valuevalue

Definition at line 117 of file JEquation.hh.

118 {
119 return equation_type<T>(key, value);
120 }

◆ getKey()

const std::string & JLANG::JEquation::getKey ( ) const
inlineinherited

Get key.

Returns
key

Definition at line 163 of file JEquation.hh.

164 {
165 return key;
166 }

◆ getSeparator()

const char JLANG::JEquation::getSeparator ( ) const
inlineinherited

Get separator.

Returns
separator

Definition at line 174 of file JEquation.hh.

175 {
176 return sep;
177 }

◆ getValue()

const std::string & JLANG::JEquation::getValue ( ) const
inlineinherited

Get value.

Returns
value

Definition at line 185 of file JEquation.hh.

186 {
187 return value;
188 }

◆ setEquation() [1/2]

JEquation & JLANG::JEquation::setEquation ( const std::string & buffer,
const JEquationFacet & facet )
inlineinherited

Set equation.

Parameters
bufferinput
facetfacet
Returns
this equation

Definition at line 317 of file JEquation.hh.

318 {
319 using namespace std;
320
321 istringstream in(buffer);
322
323 in.imbue(locale(in.getloc(), facet.clone()));
324
325 in >> *this;
326
327 return *this;
328 }

◆ setEquation() [2/2]

JEquation & JLANG::JEquation::setEquation ( const JEquationFacet & facet)
inlineinherited

Set this equation to its value.

Parameters
facetfacet
Returns
this equation

Definition at line 337 of file JEquation.hh.

338 {
339 setEquation(getValue(), facet);
340
341 return *this;
342 }
const std::string & getValue() const
Get value.
Definition JEquation.hh:185
JEquation & setEquation(const std::string &buffer, const JEquationFacet &facet)
Set equation.
Definition JEquation.hh:317

◆ valueOf()

static JEquation JLANG::JEquation::valueOf ( const std::string & buffer,
const JEquationFacet & facet )
inlinestaticinherited

Extract equation.

Parameters
bufferinput
facetfacet
Returns
equation

Definition at line 352 of file JEquation.hh.

353 {
354 return JEquation(buffer, facet);
355 }
JEquation()
Default constructor.
Definition JEquation.hh:126

◆ toString()

std::string JLANG::JEquation::toString ( ) const
inlineinherited

Convert equation to string.

Returns
string

Definition at line 363 of file JEquation.hh.

364 {
365 std::string buffer;
366
367 buffer += getKey();
368 buffer += getSeparator();
369 buffer += getValue();
370
371 return buffer;
372 }
const std::string & getKey() const
Get key.
Definition JEquation.hh:163
const char getSeparator() const
Get separator.
Definition JEquation.hh:174

Friends And Related Symbol Documentation

◆ operator>>

std::istream & operator>> ( std::istream & in,
JEquation_t & equation )
friend

Read equation from input stream.

Parameters
ininput stream
equationequation
Returns
input stream

Definition at line 57 of file JEquation_t.hh.

58 {
59 using namespace std;
60 using namespace JPP;
61
62 const locale loc = in.imbue(locale(in.getloc(), new JEquationFacet(JEquationParameters())));
63
64 in >> static_cast<JEquation&>(equation);
65
66 //in.imbue(loc);
67
68 return in;
69 }
Facet class to specify parsing of equations in currect locale (see class JLANG::JEquation).
Simple data structure to support I/O of equations (see class JLANG::JEquation).
General purpose equation class.
Definition JEquation.hh:47
char * loc(char *orig)
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).

Member Data Documentation

◆ key

JString JLANG::JEquation::key
protectedinherited

Definition at line 375 of file JEquation.hh.

◆ sep

char JLANG::JEquation::sep
protectedinherited

Definition at line 376 of file JEquation.hh.

◆ value

JString JLANG::JEquation::value
protectedinherited

Definition at line 377 of file JEquation.hh.


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