sc::KeyValValue(3)

πŸ“¦
version 2.3.1 Β· 4 versions
, in fedora 43, ubuntu noble

πŸ’– NAME πŸ’–

sc::KeyValValue β€” bestie, this is a C++ class from MPQC, and it's living its life in section 3 of the manual (the library functions one, iykyk). πŸŽ€

That's literally all the NAME section says. No cute one-liner, no "does the thing" β€” just the class name. Iconic minimalism, honestly. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

Inherits sc::RefCount.

Inherited by sc::KeyValValueRefDescribedClass, sc::KeyValValueString,
sc::KeyValValueboolean, sc::KeyValValuechar, sc::KeyValValuedouble,
sc::KeyValValuefloat, sc::KeyValValueint, sc::KeyValValuepchar,
sc::KeyValValuesize, and sc::KeyValValuestring.

So sc::KeyValValue is the mom friend of this whole little family β€” it inherits from sc::RefCount, and a whole squad of subclasses inherits from it. It's giving main character energy, fr fr. πŸ‘‘


🌸 Public Types 🌸

  • enum KeyValValueError { OK, WrongType } β€” two moods only, and honestly? Relatable. πŸ’…

🌈 Public Member Functions 🌈

Okay so the source page lists these with no descriptions at all β€” just the signatures, standing there in their little outfits. So here's the full roster, verbatim, no notes:

  • KeyValValue (const KeyValValue &)
  • virtual KeyValValue::KeyValValueError doublevalue (double &) const
  • virtual KeyValValue::KeyValValueError booleanvalue (int &) const
  • virtual KeyValValue::KeyValValueError floatvalue (float &) const
  • virtual KeyValValue::KeyValValueError charvalue (char &) const
  • virtual KeyValValue::KeyValValueError intvalue (int &) const
  • virtual KeyValValue::KeyValValueError sizevalue (size_t &) const
  • virtual KeyValValue::KeyValValueError pcharvalue (const char *&) const
  • virtual KeyValValue::KeyValValueError stringvalue (std::string &) const
  • virtual KeyValValue::KeyValValueError describedclassvalue (Ref< DescribedClass > &) const
  • virtual void print (std::ostream &o=ExEnv::out0()) const
Not me noticing there are exactly ten of the <something>value twins. Every single one of them returns a KeyValValueError and takes a reference to hand something back through. Copy the signatures exactly if you're using them, bestie β€” I'm not adding a single syllable the manpage didn't say. 🫢

πŸ’œ Public Member Functions inherited from sc::RefCount πŸ’œ

The hand-me-downs, and they're cute:

  • int lock_ptr () const β€” lock this object. πŸ”’
  • int unlock_ptr () const β€” unlock this object. πŸ”“
  • void use_locks (bool inVal) β€” start and stop using locks on this object.
  • refcount_t nreference () const β€” return the reference count.
  • refcount_t reference () β€” increment the reference count and return the new count.
  • refcount_t dereference () β€” decrement the reference count and return the new count.
  • int managed () const β€” (yes, this one shows up in the source with no description attached, we don't ask questions) πŸ™ˆ
  • void unmanage () β€” turn off the reference counting mechanism for this object.
  • int managed () const β€” return 1 if the object is managed. Otherwise return 0.
Okay yes, int managed () const is listed twice in the original page β€” once bare, once with a description. That's not me being messy, that's just what the page says. Slay, I guess. πŸ’€

🧚 Public Member Functions inherited from sc::Identity 🧚

  • Identifier identifier () β€” return the Identifier for this argument.

πŸŽ€ Additional Inherited Members πŸŽ€

Protected Member Functions inherited from sc::RefCount

  • RefCount (const RefCount &)
  • RefCount & operator= (const RefCount &)

Protected, so they're the VIP-section-only members. Respect the velvet rope. πŸ“


⭐ Author ⭐

Generated automatically by Doxygen for MPQC from the source code. So like… the robots wrote it, and I just put a bow on it. πŸŽ€


And that's the whole page, bestie!! πŸ’– This was sc::KeyValValue(3) from MPQC Version 2.3.1 β€” same manual, same facts, just with infinitely better vibes. Go forth and #include responsibly. πŸ‘‘βœ¨πŸ’…

πŸ“¦ where this page comes from