The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

typedef struct refcounted_he COPHH;

#define COPHH_KEY_UTF8 REFCOUNTED_HE_KEY_UTF8 #define COPHH_EXISTS REFCOUNTED_HE_EXISTS

/* =for apidoc Amx|SV *|cophh_fetch_pvn|const COPHH *cophh|const char *keypv|STRLEN keylen|U32 hash|U32 flags

Look up the entry in the cop hints hash cophh with the key specified by keypv and keylen. If flags has the COPHH_KEY_UTF8 bit set, the key octets are interpreted as UTF-8, otherwise they are interpreted as Latin-1. hash is a precomputed hash of the key string, or zero if it has not been precomputed. Returns a mortal scalar copy of the value associated with the key, or &PL_sv_placeholder if there is no value associated with the key.

Like "cophh_fetch_pvn", but takes a literal string instead of a string/length pair, and no precomputed hash.

Like "cophh_fetch_pvn", but takes a nul-terminated string instead of a string/length pair.

Like "cophh_fetch_pvn", but takes a Perl scalar instead of a string/length pair.

Look up the entry in the cop hints hash cophh with the key specified by keypv and keylen. If flags has the COPHH_KEY_UTF8 bit set, the key octets are interpreted as UTF-8, otherwise they are interpreted as Latin-1. hash is a precomputed hash of the key string, or zero if it has not been precomputed. Returns true if a value exists, and false otherwise.

Like "cophh_exists_pvn", but takes a literal string instead of a string/length pair, and no precomputed hash.

Like "cophh_exists_pvn", but takes a nul-terminated string instead of a string/length pair.

Like "cophh_exists_pvn", but takes a Perl scalar instead of a string/length pair.

Generates and returns a standard Perl hash representing the full set of key/value pairs in the cop hints hash cophh. flags is currently unused and must be zero.

Make and return a complete copy of the cop hints hash cophh.

Discard the cop hints hash cophh, freeing all resources associated with it.

Generate and return a fresh cop hints hash containing no entries.

Stores a value, associated with a key, in the cop hints hash cophh, and returns the modified hash. The returned hash pointer is in general not the same as the hash pointer that was passed in. The input hash is consumed by the function, and the pointer to it must not be subsequently used. Use "cophh_copy" if you need both hashes.

The key is specified by keypv and keylen. If flags has the COPHH_KEY_UTF8 bit set, the key octets are interpreted as UTF-8, otherwise they are interpreted as Latin-1. hash is a precomputed hash of the key string, or zero if it has not been precomputed.

value is the scalar value to store for this key. value is copied by this function, which thus does not take ownership of any reference to it, and later changes to the scalar will not be reflected in the value visible in the cop hints hash. Complex types of scalar will not be stored with referential integrity, but will be coerced to strings.

Like "cophh_store_pvn", but takes a literal string instead of a string/length pair, and no precomputed hash.

Like "cophh_store_pvn", but takes a nul-terminated string instead of a string/length pair.

Like "cophh_store_pvn", but takes a Perl scalar instead of a string/length pair.

Delete a key and its associated value from the cop hints hash cophh, and returns the modified hash. The returned hash pointer is in general not the same as the hash pointer that was passed in. The input hash is consumed by the function, and the pointer to it must not be subsequently used. Use "cophh_copy" if you need both hashes.

The key is specified by keypv and keylen. If flags has the COPHH_KEY_UTF8 bit set, the key octets are interpreted as UTF-8, otherwise they are interpreted as Latin-1. hash is a precomputed hash of the key string, or zero if it has not been precomputed.

Like "cophh_delete_pvn", but takes a literal string instead of a string/length pair, and no precomputed hash.

Like "cophh_delete_pvn", but takes a nul-terminated string instead of a string/length pair.

Like "cophh_delete_pvn", but takes a Perl scalar instead of a string/length pair.

Look up the hint entry in the cop cop with the key specified by keypv and keylen. If flags has the COPHH_KEY_UTF8 bit set, the key octets are interpreted as UTF-8, otherwise they are interpreted as Latin-1. hash is a precomputed hash of the key string, or zero if it has not been precomputed. Returns a mortal scalar copy of the value associated with the key, or &PL_sv_placeholder if there is no value associated with the key.

Like "cop_hints_fetch_pvn", but takes a literal string instead of a string/length pair, and no precomputed hash.

Like "cop_hints_fetch_pvn", but takes a nul-terminated string instead of a string/length pair.

Like "cop_hints_fetch_pvn", but takes a Perl scalar instead of a string/length pair.

Look up the hint entry in the cop cop with the key specified by keypv and keylen. If flags has the COPHH_KEY_UTF8 bit set, the key octets are interpreted as UTF-8, otherwise they are interpreted as Latin-1. hash is a precomputed hash of the key string, or zero if it has not been precomputed. Returns true if a value exists, and false otherwise.

Like "cop_hints_exists_pvn", but takes a literal string instead of a string/length pair, and no precomputed hash.

Like "cop_hints_exists_pvn", but takes a nul-terminated string instead of a string/length pair.

Like "cop_hints_exists_pvn", but takes a Perl scalar instead of a string/length pair.

Generates and returns a standard Perl hash representing the full set of hint entries in the cop cop. flags is currently unused and must be zero.

Returns the label attached to a cop.

Returns the label attached to a cop, and stores its length in bytes into *len.

Returns the label attached to a cop, and stores its length in bytes into *len. Upon return, *flags will be set to either SVf_UTF8 or 0.