Author: jquelin
Date: Sat Oct  6 06:10:37 2007
New Revision: 21918

Modified:
   branches/pdd15oo/languages/dotnet/src/translator.pir

Log:
more find_type removal

Modified: branches/pdd15oo/languages/dotnet/src/translator.pir
==============================================================================
--- branches/pdd15oo/languages/dotnet/src/translator.pir        (original)
+++ branches/pdd15oo/languages/dotnet/src/translator.pir        Sat Oct  6 
06:10:37 2007
@@ -48,30 +48,32 @@
     # non-reference types Parrot doesn't recognize.
     pir_output = concat <<"PIR"
 .sub __CREATE_DOTNET_MMDBOXES :load
+    .local pmc class
+
     $P0 = getclass "Integer"
-    $I0 = find_type "@@DOTNET_MMDBOX_I1"
-    if $I0 goto EXISTS_I1
+    class = get_class "@@DOTNET_MMDBOX_I1"
+    unless null class goto EXISTS_I1
     subclass $P1, $P0, "@@DOTNET_MMDBOX_I1"
 EXISTS_I1:
-    $I0 = find_type "@@DOTNET_MMDBOX_I2"
-    if $I0 goto EXISTS_I2
+    class = get_class "@@DOTNET_MMDBOX_I2"
+    unless null class goto EXISTS_I2
     subclass $P1, $P0, "@@DOTNET_MMDBOX_I2"
 EXISTS_I2:
-    $I0 = find_type "@@DOTNET_MMDBOX_U1"
-    if $I0 goto EXISTS_U1
+    class = get_class "@@DOTNET_MMDBOX_U1"
+    unless null class goto EXISTS_U1
     subclass $P1, $P0, "@@DOTNET_MMDBOX_U1"
 EXISTS_U1:
-    $I0 = find_type "@@DOTNET_MMDBOX_U2"
-    if $I0 goto EXISTS_U2
+    class = get_class "@@DOTNET_MMDBOX_U2"
+    unless null class goto EXISTS_U2
     subclass $P1, $P0, "@@DOTNET_MMDBOX_U2"
 EXISTS_U2:
-    $I0 = find_type "@@DOTNET_MMDBOX_U4"
-    if $I0 goto EXISTS_U4
+    class = get_class "@@DOTNET_MMDBOX_U4"
+    unless null class goto EXISTS_U4
     subclass $P1, $P0, "@@DOTNET_MMDBOX_U4"
 EXISTS_U4:
     $P0 = getclass "Float"
-    $I0 = find_type "@@DOTNET_MMDBOX_R4"
-    if $I0 goto EXISTS_R4
+    class = get_class "@@DOTNET_MMDBOX_R4"
+    unless null class goto EXISTS_R4
     subclass $P1, $P0, "@@DOTNET_MMDBOX_R4"
 EXISTS_R4:
 .end
@@ -82,8 +84,8 @@
     pir_output = concat <<"PIR"
 .namespace [ "System"; "Object" ]
 .sub __FAKE_SYSTEM_OBJECT :load
-    $I0 = find_type [ "System" ; "Object" ]
-    if $I0 goto EXISTS
+    $P0 = get_class [ "System" ; "Object" ]
+    unless null $P0 goto EXISTS
     $P0 = newclass [ "System" ; "Object" ]
 EXISTS:
 .end
@@ -96,8 +98,8 @@
     pir_output = concat <<"PIR"
 .namespace [ "System" ; "Exception" ]
 .sub __FAKE_SYSTEM_EXCEPTION :load
-    $I0 = find_type [ "System" ; "Exception" ]
-    if $I0 goto EXISTS
+    $P0 = get_class [ "System" ; "Exception" ]
+    unless null $P0 goto EXISTS
     $P0 = newclass [ "System" ; "Exception" ]
 EXISTS:
 .end
@@ -105,8 +107,8 @@
 .end
 .namespace [ "System" ; "String" ]
 .sub __FAKE_SYSTEM_STRING :load
-    $I0 = find_type [ "System" ; "String" ]
-    if $I0 goto EXISTS
+    $P0 = get_class [ "System" ; "String" ]
+    unless null $P0 goto EXISTS
     $P0 = newclass [ "System" ; "String" ]
     addattribute $P0, "Chars"
 EXISTS:
@@ -124,15 +126,15 @@
 .end
 .namespace [ "System" ; "ValueType" ]
 .sub __FAKE_SYSTEM_VALUETYPE :load
-    $I0 = find_type [ "System" ; "ValueType" ]
-    if $I0 goto EXISTS
+    $P0 = get_class [ "System" ; "ValueType" ]
+    unless null $P0 goto EXISTS
     $P0 = newclass [ "System" ; "ValueType" ]
 EXISTS:
 .end
 .namespace [ "System" ; "Enum" ]
 .sub __FAKE_SYSTEM_ENUM :load
-    $I0 = find_type [ "System" ; "Enum" ]
-    if $I0 goto EXISTS
+    $P0 = get_class [ "System" ; "Enum" ]
+    unless null $P0 goto EXISTS
     $P0 = newclass [ "System" ; "Enum" ]
 EXISTS:
 .end

Reply via email to