GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
sc::PrefixKeyVal(3) MPQC sc::PrefixKeyVal(3)

sc::PrefixKeyVal - PrefixKeyVal is a KeyVal that searches a different KeyVal using modified keys.

#include <keyval.h>

Inherits sc::KeyVal.

Constructors.
Construct a PrefixKeyVal, using the given prefix and indices.



PrefixKeyVal (const Ref< KeyVal > &, int i)
PrefixKeyVal (const Ref< KeyVal > &, int i, int j)
PrefixKeyVal (const Ref< KeyVal > &, int i, int j, int k)
PrefixKeyVal (const Ref< KeyVal > &, int i, int j, int k, int l)
PrefixKeyVal (const Ref< KeyVal > &, const char *prefix)
PrefixKeyVal (const Ref< KeyVal > &, const char *prefix, int i)
PrefixKeyVal (const Ref< KeyVal > &, const char *prefix, int i, int j)
PrefixKeyVal (const Ref< KeyVal > &, const char *prefix, int i, int j, int k)
PrefixKeyVal (const Ref< KeyVal > &, const char *prefix, int i, int j, int k, int l)
~PrefixKeyVal ()
void errortrace (std::ostream &fp=ExEnv::err0())
Write a message to fp describing the error. void dump (std::ostream &fp=ExEnv::err0())
Write a message to fp describing the error.

PrefixKeyVal is a KeyVal that searches a different KeyVal using modified keys.

This is convenient for reading keys grouped together with a common prefix. Consider the following code:

sc::Ref<sc::KeyVal> keyval = new sc::PrefixKeyVal('A',original_keyval);
int r = keyval->intvalue('x');

This code will assign to r the value associated with 'x' in keyval. keyval will search for 'x' by searching for 'A::x' in original_keyval.

This class is important for implementing constructors that take KeyVal arguments. When an object is being constructed from a KeyVal, it may contain another object that must be constructed from a KeyVal. In order to let the sub-object read the correct keywords from the KeyVal, without knowledge of the containing objects keyword prefix, a PrefixKeyVal can be constructed. For example, the code

class A: public DescribedClass {
   double f0_;
  public:
   A(const Ref<KeyVal> &keyval): f0_(keyval->doublevalue("f0")) {}
}
class B: public DescribedClass {
   double f1_;
   Ref<A> a_;
  public:
   B(const Ref<KeyVal> &keyval):
     f1_(keyval->doublevalue("f1")),
     a_(new PrefixKeyVal(keyval,"a"))
   {}
};

can be used to read ParsedKeyVal input that looks like

b<B>: (
  f1 = 1.0
  a<A>: (
    f0 = 2.0
  )
)

Write a message to fp describing the error.

Reimplemented from sc::KeyVal.

Write a message to fp describing the error.

Reimplemented from sc::KeyVal.

Generated automatically by Doxygen for MPQC from the source code.
Tue Jun 7 2022 Version 2.3.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.