[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