Author: chromatic
Date: Fri Feb 22 22:57:24 2008
New Revision: 26005

Modified:
   branches/pdd17pmc/include/parrot/oo_private.h
   branches/pdd17pmc/src/pmc/class.pmc
   branches/pdd17pmc/src/pmc/object.pmc

Log:
[PMC] Ported Object PMC to PDD 17 attribute declaration.

The Class PMC now refers to the generated pmc_object.h file.


Modified: branches/pdd17pmc/include/parrot/oo_private.h
==============================================================================
--- branches/pdd17pmc/include/parrot/oo_private.h       (original)
+++ branches/pdd17pmc/include/parrot/oo_private.h       Fri Feb 22 22:57:24 2008
@@ -1,5 +1,5 @@
 /* oo_private.h
- *  Copyright (C) 2007, The Perl Foundation.
+ *  Copyright (C) 2007-2008, The Perl Foundation.
  *  SVN Info
  *     $Id$
  *  Overview:
@@ -16,15 +16,6 @@
 
 #include "parrot/parrot.h"
 
-/* Object PMC's underlying struct. */
-typedef struct Parrot_Object {
-    PMC *_class;          /* The class this is an instance of. */
-    PMC *attrib_store;   /* The attributes store - a resizable PMC array. */
-} Parrot_Object;
-
-/* Macro to access underlying structure of an Object PMC. */
-#define PARROT_OBJECT(o) ((Parrot_Object *) PMC_data(o))
-
 /*
  * Class private flags
  */

Modified: branches/pdd17pmc/src/pmc/class.pmc
==============================================================================
--- branches/pdd17pmc/src/pmc/class.pmc (original)
+++ branches/pdd17pmc/src/pmc/class.pmc Fri Feb 22 22:57:24 2008
@@ -95,6 +95,7 @@
 #define PARROT_IN_OBJECTS_C /* To get the vtable.h imports we want. */
 #include "parrot/parrot.h"
 #include "parrot/oo_private.h"
+#include "pmc_object.h"
 #include "pmc_namespace.h"
 
 /* This function builds the attribute index (table to map class name and

Modified: branches/pdd17pmc/src/pmc/object.pmc
==============================================================================
--- branches/pdd17pmc/src/pmc/object.pmc        (original)
+++ branches/pdd17pmc/src/pmc/object.pmc        Fri Feb 22 22:57:24 2008
@@ -1,5 +1,5 @@
 /*
-Copyright (C) 2001-2007, The Perl Foundation.
+Copyright (C) 2001-2008, The Perl Foundation.
 $Id$
 
 =head1 NAME
@@ -91,6 +91,8 @@
 }
 
 pmclass Object need_ext {
+    ATTR PMC *_class;       /* The class this is an instance of. */
+    ATTR PMC *attrib_store; /* The attributes store - a resizable PMC array. */
 
 /*
 

Reply via email to