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