cvs commit: ponie/src/pmc perl5cargo_cult.pmc
[email protected] (Nicholas Clark) 14 Oct 2004 18:26:16 -0000
| Newsgroups | perl.ponie.changes |
|---|---|
| Message-ID | <[email protected]> |
cvsuser 04/10/14 11:26:16
Modified: perl sv.h
src/pmc perl5cargo_cult.pmc
Log:
Move SvIOK_UV and SvIOK_notUV to PMC
Revision Changes Path
1.32 +4 -4 ponie/perl/sv.h
Index: sv.h
===================================================================
RCS file: /cvs/public/ponie/perl/sv.h,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -w -r1.31 -r1.32
--- sv.h 14 Oct 2004 18:04:37 -0000 1.31
+++ sv.h 14 Oct 2004 18:26:16 -0000 1.32
@@ -430,6 +430,8 @@
Ponie_I_SVpf_IOK,
Ponie_I_SVpf_IOK_only,
Ponie_I_SVpf_IOK_only_exc_UV,
+ Ponie_I_SVf_IOK_UV,
+ Ponie_I_SVf_IOK_notUV,
Ponie_I_SVf_NIOK,
Ponie_I_SVp_NIOK,
Ponie_I_SVpf_NIOK,
@@ -606,11 +608,9 @@
#define SvIOK_only(sv) Parrot_PMC_set_intval_intkey(PL_Parrot,MUMBLE(sv), Ponie_I_SVpf_IOK_only, 1)
#define SvIOK_only_UV(sv) Parrot_PMC_set_intval_intkey(PL_Parrot,MUMBLE(sv), Ponie_I_SVpf_IOK_only_exc_UV, 1)
-#define SvIOK_UV(sv) ((SvFLAGS(sv) & (SVf_IOK|SVf_IVisUV)) \
- == (SVf_IOK|SVf_IVisUV))
+#define SvIOK_UV(sv) ((U32)Parrot_PMC_get_intval_intkey(PL_Parrot,MUMBLE(sv), Ponie_I_SVf_IOK_UV))
#define SvUOK(sv) SvIOK_UV(sv)
-#define SvIOK_notUV(sv) ((SvFLAGS(sv) & (SVf_IOK|SVf_IVisUV)) \
- == SVf_IOK)
+#define SvIOK_notUV(sv) ((U32)Parrot_PMC_get_intval_intkey(PL_Parrot,MUMBLE(sv), Ponie_I_SVf_IOK_notUV))
#define SvIsUV(sv) (SvFLAGS(sv) & SVf_IVisUV)
#define SvIsUV_on(sv) (SvFLAGS(sv) |= SVf_IVisUV)
1.21 +9 -1 ponie/src/pmc/perl5cargo_cult.pmc
Index: perl5cargo_cult.pmc
===================================================================
RCS file: /cvs/public/ponie/src/pmc/perl5cargo_cult.pmc,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -w -r1.20 -r1.21
--- perl5cargo_cult.pmc 14 Oct 2004 18:04:37 -0000 1.20
+++ perl5cargo_cult.pmc 14 Oct 2004 18:26:16 -0000 1.21
@@ -1,7 +1,7 @@
/* Perl5QQQ.pmc -*- c -*-
* Copyright: 2001-2004 The Perl Foundation. All Rights Reserved.
* CVS Info
- * $Id: perl5cargo_cult.pmc,v 1.20 2004/10/14 18:04:37 nicholas Exp $
+ * $Id: perl5cargo_cult.pmc,v 1.21 2004/10/14 18:26:16 nicholas Exp $
* Overview:
* These are the vtable functions for the Perl5QQQ base class
* Data Structure and Algorithms:
@@ -91,6 +91,14 @@
case Ponie_I_SVpf_IOK:
return ((struct STRUCT_SV *)PMC_struct_val(SELF))->sv_flags
& (SVf_IOK|SVf_IOK);
+ case Ponie_I_SVf_IOK_UV:
+ return (((struct STRUCT_SV *)PMC_struct_val(SELF))->sv_flags
+ & (SVf_IOK|SVf_IVisUV))
+ == (SVf_IOK|SVf_IVisUV);
+ case Ponie_I_SVf_IOK_notUV:
+ return (((struct STRUCT_SV *)PMC_struct_val(SELF))->sv_flags
+ & (SVf_IOK|SVf_IVisUV))
+ == (SVf_IOK);
case Ponie_I_SVp_NIOK:
return ((struct STRUCT_SV *)PMC_struct_val(SELF))->sv_flags