diff options
author | Nicholas Clark <nick@ccl4.org> | 2008-12-26 18:26:53 +0000 |
---|---|---|
committer | David Mitchell <davem@iabyn.com> | 2009-03-30 16:40:53 +0100 |
commit | 7589a8571d9b15eb4be5ca38caf14b3995431387 (patch) | |
tree | 7574e3f121c0780b7e01a53247d301bfea9bc4c2 /proto.h | |
parent | 1330b908a0a176c486bf3077990b8be64ea49307 (diff) | |
download | perl-7589a8571d9b15eb4be5ca38caf14b3995431387.tar.gz |
Add Perl_mro_register() to register Method Resolution Orders,
Perl_mro_get_from_name() to retrieve MROs by name, and PL_registered_mros to
store them in. Abolish the static array of mros, and instead register the dfs
and c3 MRO structures.
(cherry picked from commit a3e6e81e81213c31f0612471c427044481a95287)
Diffstat (limited to 'proto.h')
-rw-r--r-- | proto.h | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -6577,6 +6577,16 @@ PERL_CALLCONV SV* Perl_mro_set_private_data(pTHX_ struct mro_meta *const smeta, #define PERL_ARGS_ASSERT_MRO_SET_PRIVATE_DATA \ assert(smeta); assert(which); assert(data) +PERL_CALLCONV const struct mro_alg * Perl_mro_get_from_name(pTHX_ SV *name) + __attribute__nonnull__(pTHX_1); +#define PERL_ARGS_ASSERT_MRO_GET_FROM_NAME \ + assert(name) + +PERL_CALLCONV void Perl_mro_register(pTHX_ const struct mro_alg *mro) + __attribute__nonnull__(pTHX_1); +#define PERL_ARGS_ASSERT_MRO_REGISTER \ + assert(mro) + PERL_CALLCONV struct mro_meta* Perl_mro_meta_init(pTHX_ HV* stash) __attribute__nonnull__(pTHX_1); #define PERL_ARGS_ASSERT_MRO_META_INIT \ |