Skip to content

Commit ff608c1

Browse files
committed
Remove ForeignDateBuiltins
1 parent e9a8669 commit ff608c1

4 files changed

Lines changed: 8 additions & 190 deletions

File tree

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/Python3Core.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,6 @@
263263
import com.oracle.graal.python.builtins.objects.floats.PFloat;
264264
import com.oracle.graal.python.builtins.objects.foreign.ForeignAbstractClassBuiltins;
265265
import com.oracle.graal.python.builtins.objects.foreign.ForeignBooleanBuiltins;
266-
import com.oracle.graal.python.builtins.objects.foreign.ForeignDateBuiltins;
267266
import com.oracle.graal.python.builtins.objects.foreign.ForeignDateTimeBuiltins;
268267
import com.oracle.graal.python.builtins.objects.foreign.ForeignExecutableBuiltins;
269268
import com.oracle.graal.python.builtins.objects.foreign.ForeignInstantiableBuiltins;
@@ -504,7 +503,6 @@ private static PythonBuiltins[] initializeBuiltins(TruffleLanguage.Env env) {
504503
new ForeignObjectBuiltins(),
505504
new ForeignNumberBuiltins(),
506505
new ForeignBooleanBuiltins(),
507-
new ForeignDateBuiltins(),
508506
new ForeignDateTimeBuiltins(),
509507
new ForeignTimeBuiltins(),
510508
new ForeignTimeZoneBuiltins(),

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/PythonBuiltinClassType.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,6 @@
181181
import com.oracle.graal.python.builtins.objects.floats.FloatBuiltins;
182182
import com.oracle.graal.python.builtins.objects.foreign.ForeignAbstractClassBuiltins;
183183
import com.oracle.graal.python.builtins.objects.foreign.ForeignBooleanBuiltins;
184-
import com.oracle.graal.python.builtins.objects.foreign.ForeignDateBuiltins;
185184
import com.oracle.graal.python.builtins.objects.foreign.ForeignDateTimeBuiltins;
186185
import com.oracle.graal.python.builtins.objects.foreign.ForeignExecutableBuiltins;
187186
import com.oracle.graal.python.builtins.objects.foreign.ForeignInstantiableBuiltins;
@@ -1235,7 +1234,7 @@ def takewhile(predicate, iterable):
12351234
newBuilder().moduleName("datetime").publishInModule("_datetime").slots(TimeZoneBuiltins.SLOTS).doc("Fixed offset from UTC implementation of tzinfo.")),
12361235

12371236
// foreign datetime
1238-
ForeignDate("ForeignDate", PDate, newBuilder().publishInModule(J_POLYGLOT).basetype().addDict().disallowInstantiation().slots(ForeignDateBuiltins.SLOTS)),
1237+
ForeignDate("ForeignDate", PDate, newBuilder().publishInModule(J_POLYGLOT).basetype().addDict().disallowInstantiation()),
12391238
ForeignTime("ForeignTime", PTime, newBuilder().publishInModule(J_POLYGLOT).basetype().addDict().disallowInstantiation().slots(ForeignTimeBuiltins.SLOTS)),
12401239
ForeignDateTime("ForeignDateTime", PDateTime, newBuilder().publishInModule(J_POLYGLOT).basetype().addDict().disallowInstantiation().slots(ForeignDateTimeBuiltins.SLOTS)),
12411240
ForeignTimeZone("ForeignTimeZone", PTzInfo, newBuilder().publishInModule(J_POLYGLOT).basetype().addDict().disallowInstantiation().slots(ForeignTimeZoneBuiltins.SLOTS)),

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/modules/datetime/DateBuiltins.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@
116116
import com.oracle.graal.python.nodes.function.builtins.PythonUnaryBuiltinNode;
117117
import com.oracle.graal.python.nodes.function.builtins.clinic.ArgumentClinicProvider;
118118
import com.oracle.graal.python.nodes.object.GetClassNode;
119+
import com.oracle.graal.python.nodes.object.IsForeignObjectNode;
119120
import com.oracle.graal.python.nodes.util.CannotCastException;
120121
import com.oracle.graal.python.nodes.util.CastToJavaStringNode;
121122
import com.oracle.graal.python.nodes.util.CastToTruffleStringNode;
@@ -378,7 +379,7 @@ private static Object addBoundary(Object left, Object right, Node inliningTarget
378379

379380
LocalDate localDate = ChronoUnit.DAYS.addTo(from, days - 1);
380381
return DateNodes.SubclassNewNode.getUncached().execute(inliningTarget,
381-
GetClassNode.executeUncached(dateObj),
382+
getResultDateType(dateObj),
382383
localDate.getYear(),
383384
localDate.getMonthValue(),
384385
localDate.getDayOfMonth());
@@ -443,7 +444,7 @@ private static Object subBoundary(Object left, Object right, Node inliningTarget
443444

444445
LocalDate localDate = ChronoUnit.DAYS.addTo(from, days - 1);
445446
return DateNodes.SubclassNewNode.getUncached().execute(inliningTarget,
446-
GetClassNode.executeUncached(left),
447+
getResultDateType(left),
447448
localDate.getYear(),
448449
localDate.getMonthValue(),
449450
localDate.getDayOfMonth());
@@ -521,6 +522,10 @@ static int getDay(Object self,
521522
}
522523
}
523524

525+
private static Object getResultDateType(Object dateObj) {
526+
return IsForeignObjectNode.executeUncached(dateObj) ? PythonBuiltinClassType.PDate : GetClassNode.executeUncached(dateObj);
527+
}
528+
524529
@Builtin(name = "today", minNumOfPositionalArgs = 1, isClassmethod = true, parameterNames = {"self"})
525530
@GenerateNodeFactory
526531
public abstract static class TodayNode extends PythonBuiltinNode {

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/foreign/ForeignDateBuiltins.java

Lines changed: 0 additions & 184 deletions
This file was deleted.

0 commit comments

Comments
 (0)