diff options
author | Nicholas Clark <nick@ccl4.org> | 2008-12-26 18:26:53 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2008-12-27 21:12:12 +0000 |
commit | a3e6e81e81213c31f0612471c427044481a95287 (patch) | |
tree | ee301f51042968614e037f30ee494f770446607d /intrpvar.h | |
parent | 123892d916359369839f3896f283189be71dc32c (diff) | |
download | perl-a3e6e81e81213c31f0612471c427044481a95287.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.
Diffstat (limited to 'intrpvar.h')
-rw-r--r-- | intrpvar.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/intrpvar.h b/intrpvar.h index 956b7dec93..4fa3c0d9a3 100644 --- a/intrpvar.h +++ b/intrpvar.h @@ -681,6 +681,12 @@ PERLVARI(Idestroyhook, destroyable_proc_t, MEMBER_TO_FPTR(Perl_sv_destroyable)) PERLVARI(Isv_serial, U32, 0) /* SV serial number, used in sv.c */ #endif +/* Register of known Method Resolution Orders. + What this actually points to is an implementation detail (it may change to + a structure incorporating a reference count - use mro_get_from_name to + retrieve a C<struct mro_alg *> */ +PERLVAR(Iregistered_mros, HV *) + /* If you are adding a U8 or U16, check to see if there are 'Space' comments * above on where there are gaps which currently will be structure padding. */ |