[svn:parrot] r35614 - in branches/morph_pmc_type/src: . pmc
[email protected] Thu, 15 Jan 2009 17:55:02 -0800 (PST)
Newsgroups
perl.cvs.parrot
Message-ID
<[email protected] >
Author: Whiteknight
Date: Thu Jan 15 17:55:01 2009
New Revision: 35614
Modified:
branches/morph_pmc_type/src/pmc/default.pmc
branches/morph_pmc_type/src/pmc/float.pmc
branches/morph_pmc_type/src/pmc/object.pmc
branches/morph_pmc_type/src/pmc/pointer.pmc
branches/morph_pmc_type/src/pmc/ref.pmc
branches/morph_pmc_type/src/pmc/scalar.pmc
branches/morph_pmc_type/src/vtable.tbl
Log:
[morph_pmc_type] remove the old morph VTABLE, everything is now replaced by my dummy morph_string method
Modified: branches/morph_pmc_type/src/pmc/default.pmc
==============================================================================
--- branches/morph_pmc_type/src/pmc/default.pmc (original)
+++ branches/morph_pmc_type/src/pmc/default.pmc Thu Jan 15 17:55:01 2009
@@ -634,10 +634,6 @@
*/
- VTABLE void morph(INTVAL type) {
- pmc_reuse(INTERP, SELF, type, 0);
- }
-
VTABLE void morph_string(STRING * type) {
const INTVAL typenum = pmc_type(interp, type);
pmc_reuse(INTERP, SELF, typenum, 0);
Modified: branches/morph_pmc_type/src/pmc/float.pmc
==============================================================================
--- branches/morph_pmc_type/src/pmc/float.pmc (original)
+++ branches/morph_pmc_type/src/pmc/float.pmc Thu Jan 15 17:55:01 2009
@@ -135,12 +135,12 @@
*/
VTABLE void set_integer_native(INTVAL value) {
- SELF.morph(enum_class_Integer);
+ SELF.morph_string(interp->vtables[enum_class_Integer]->whoami);
SELF.set_integer_native(value);
}
VTABLE void set_bool(INTVAL value) {
- SELF.morph(enum_class_Boolean);
+ SELF.morph_string(interp->vtables[enum_class_Boolean]->whoami);
SELF.set_bool(value);
}
@@ -185,7 +185,7 @@
*/
VTABLE void set_string_native(STRING *value) {
- SELF.morph(enum_class_String);
+ SELF.morph_string(interp->vtables[enum_class_String]->whoami);
SELF.set_string_native(value);
}
Modified: branches/morph_pmc_type/src/pmc/object.pmc
==============================================================================
--- branches/morph_pmc_type/src/pmc/object.pmc (original)
+++ branches/morph_pmc_type/src/pmc/object.pmc Thu Jan 15 17:55:01 2009
@@ -847,21 +847,6 @@
*/
- VTABLE void morph(INTVAL type) {
- PMC * const classobj = VTABLE_get_class(interp, SELF);
- STRING * meth_name = CONST_STRING(interp, "morph");
- /* If there's a vtable override for 'morph' run that instead. */
- PMC * const method = Parrot_oo_find_vtable_override(interp,
- classobj, meth_name);
-
- if (!PMC_IS_NULL(method)) {
- STRING * typename = string_copy(interp, interp->vtables[type]->whoami);
- Parrot_run_meth_fromc_args(interp, method, SELF, meth_name, "vS", typename);
- }
- else
- SUPER(type);
- }
-
VTABLE void morph_string(STRING * type) {
PMC * const classobj = VTABLE_get_class(interp, SELF);
Modified: branches/morph_pmc_type/src/pmc/pointer.pmc
==============================================================================
--- branches/morph_pmc_type/src/pmc/pointer.pmc (original)
+++ branches/morph_pmc_type/src/pmc/pointer.pmc Thu Jan 15 17:55:01 2009
@@ -48,9 +48,6 @@
*/
- VTABLE void morph(INTVAL type) {
- }
-
VTABLE void morph_string(STRING type) {
}
Modified: branches/morph_pmc_type/src/pmc/ref.pmc
==============================================================================
--- branches/morph_pmc_type/src/pmc/ref.pmc (original)
+++ branches/morph_pmc_type/src/pmc/ref.pmc Thu Jan 15 17:55:01 2009
@@ -150,10 +150,6 @@
*/
- VTABLE void morph(INTVAL type) {
- SUPER(type);
- }
-
VTABLE void morph_string(STRING * type) {
SUPER(type);
}
Modified: branches/morph_pmc_type/src/pmc/scalar.pmc
==============================================================================
--- branches/morph_pmc_type/src/pmc/scalar.pmc (original)
+++ branches/morph_pmc_type/src/pmc/scalar.pmc Thu Jan 15 17:55:01 2009
@@ -96,12 +96,6 @@
*/
- VTABLE void morph(INTVAL type) {
- if (SELF->vtable->base_type == type)
- return;
- pmc_reuse(INTERP, SELF, type, 0);
- }
-
VTABLE void morph_string(STRING * type) {
const INTVAL t = pmc_type(INTERP, type);
if (SELF->vtable->base_type == t)
@@ -126,11 +120,11 @@
if (SELF->vtable->base_type == enum_class_Boolean) {
/* doesn't morph */
- SELF.morph(value->vtable->base_type);
+ SELF.morph_string(value->vtable->whoami);
}
if (value->vtable->base_type == enum_class_Undef) {
- SELF.morph(value->vtable->base_type);
+ SELF.morph_string(value->vtable->whoami);
return;
}
@@ -155,7 +149,7 @@
SELF.set_string_native(v);
return;
}
- SELF.morph(enum_class_Ref);
+ SELF.morph_string(interp->vtables[enum_class_Ref]->whoami);
SELF.set_pmc(value);
}
Modified: branches/morph_pmc_type/src/vtable.tbl
==============================================================================
--- branches/morph_pmc_type/src/vtable.tbl (original)
+++ branches/morph_pmc_type/src/vtable.tbl Thu Jan 15 17:55:01 2009
@@ -11,7 +11,6 @@
void init_pmc(PMC* initializer)
PMC* instantiate(PMC* sig)
PMC* new_from_string(STRING* rep, INTVAL flags)
-void morph(INTVAL type) :write
void morph_string(STRING* type) :write
void mark()
void destroy()