NAME
src/pmc/pair.pmc - Pair PMC
DESCRIPTION
A Pair PMC represents one key => value mapping like a one element hash.
'EclectusPair' subclasses this.
Functions
void init()
Initializes the instance.
PMC *instantiate(PMC *sig)
Class method to construct an Integer according to passed arguments.
void mark()
Marks the hash as live.
PMC *get_pmc_keyed_str(STRING *key)
PMC *get_pmc_keyed(PMC *key)
void set_pmc_keyed(PMC *key, PMC *value)
void set_pmc_keyed_str(STRING *key, PMC *value)
Set key and value.
The key can only set once.
void assign_pmc(PMC *value)
Set the value of the Pair.
void set_pmc(PMC *pair)
Sets this pair to hold the value of another.
INTVAL is_equal(PMC *value)
The void visit(visit_info *info)
Used during archiving to visit the elements in the pair.
void freeze(visit_info *info)
Used to archive the Pair.
void thaw(visit_info *info)
Used to unarchive the Pair.
==
operation.Check if two Pairs hold the same keys and values.
Methods
METHOD key()
Return the key of the pair.
METHOD value()
Return the value of the pair.
METHOD kv()
Return a tuple of (key,
value) for the pair.