[svn:parrot] r38024 - branches/packfile_revamp/src/pmc

bacek at svn.parrot.org bacek at svn.parrot.org
Fri Apr 10 15:37:03 UTC 2009


Author: bacek
Date: Fri Apr 10 15:37:02 2009
New Revision: 38024
URL: https://trac.parrot.org/parrot/changeset/38024

Log:
Strip PackfileSegment to bare minimum.

Modified:
   branches/packfile_revamp/src/pmc/packfilesegment.pmc

Modified: branches/packfile_revamp/src/pmc/packfilesegment.pmc
==============================================================================
--- branches/packfile_revamp/src/pmc/packfilesegment.pmc	Fri Apr 10 06:10:34 2009	(r38023)
+++ branches/packfile_revamp/src/pmc/packfilesegment.pmc	Fri Apr 10 15:37:02 2009	(r38024)
@@ -27,32 +27,29 @@
 
 pmclass PackfileSegment {
 
-
 /*
 
-=item C<void init()>
+=item C<void set_pointer(void *ptr)>
 
-Initialize the structure.  (Create a blank PackFile_Segment object.)
+Initialize PMC internals.
 
 =cut
 
 */
-    VTABLE void init() {
-        PackFile_Segment *seg = PackFile_Segment_new(interp, NULL, "", 0);
-        PMC_data(SELF) = seg;
-        seg->type = PF_UNKNOWN_SEG;
+    VTABLE void set_pointer(void *ptr) {
     }
 
 /*
 
-=item C<void set_pointer(void *ptr)>
+=item C<void *get_pointer()>
 
 Initialize PMC internals.
 
 =cut
 
 */
-    VTABLE void set_pointer(void *ptr) {
+    VTABLE void *get_pointer() {
+        return NULL;
     }
 
 /*
@@ -65,16 +62,8 @@
 
 */
     METHOD pack() {
-        PackFile_Segment *pfseg = PMC_data_typed(SELF, PackFile_Segment *);
-        opcode_t length = PackFile_Segment_packed_size(interp, pfseg) * sizeof (opcode_t);
-        opcode_t *newptr, *ptr = (opcode_t*)mem_sys_allocate(length);
-        STRING *str;
-        newptr = PackFile_Segment_pack(interp, pfseg, ptr);
-        str = Parrot_str_new_init(interp, (const char*)ptr,
-                (newptr - ptr) * sizeof (opcode_t),
-                PARROT_FIXED_8_ENCODING, PARROT_BINARY_CHARSET, 0);
-        mem_sys_free(ptr);
-        RETURN(STRING *str);
+        Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_UNIMPLEMENTED,
+                                    "PackfileSegment.pack() not implemented yet.");
     }
 
 


More information about the parrot-commits mailing list