64
64
import com .oracle .graal .python .builtins .objects .PythonAbstractObject ;
65
65
import com .oracle .graal .python .builtins .objects .cext .common .CExtContext ;
66
66
import com .oracle .graal .python .builtins .objects .cext .hpy .GraalHPyContextFunctions .GraalHPyArithmetic ;
67
+ import com .oracle .graal .python .builtins .objects .cext .hpy .GraalHPyContextFunctions .GraalHPyAsIndex ;
67
68
import com .oracle .graal .python .builtins .objects .cext .hpy .GraalHPyContextFunctions .GraalHPyAsPyObject ;
68
69
import com .oracle .graal .python .builtins .objects .cext .hpy .GraalHPyContextFunctions .GraalHPyBytesAsString ;
69
70
import com .oracle .graal .python .builtins .objects .cext .hpy .GraalHPyContextFunctions .GraalHPyBytesGetSize ;
@@ -192,7 +193,8 @@ enum HPyContextMembers {
192
193
CTX_INPLACEFLOORDIVIDE ("ctx_InPlaceFloorDivide" ),
193
194
CTX_INPLACETRUEDIVIDE ("ctx_InPlaceTrueDivide" ),
194
195
CTX_INPLACEREMAINDER ("ctx_InPlaceRemainder" ),
195
- CTX_INPLACEDIVMOD ("ctx_InPlaceDivmod" ),
196
+ // TODO(fa): support IDivMod
197
+ // CTX_INPLACEDIVMOD("ctx_InPlaceDivmod"),
196
198
CTX_INPLACELSHIFT ("ctx_InPlaceLshift" ),
197
199
CTX_INPLACERSHIFT ("ctx_InPlaceRshift" ),
198
200
CTX_INPLACEAND ("ctx_InPlaceAnd" ),
@@ -455,8 +457,7 @@ private static Object[] createMembers(PythonContext context) {
455
457
members [HPyContextMembers .CTX_POSITIVE .ordinal ()] = new GraalHPyArithmetic (UnaryArithmetic .Pos );
456
458
members [HPyContextMembers .CTX_ABSOLUTE .ordinal ()] = new GraalHPyCallBuiltinFunction (BuiltinNames .ABS , 1 );
457
459
members [HPyContextMembers .CTX_INVERT .ordinal ()] = new GraalHPyArithmetic (UnaryArithmetic .Invert );
458
- // TODO(fa): Index unsupported ?
459
- members [HPyContextMembers .CTX_INDEX .ordinal ()] = null ;
460
+ members [HPyContextMembers .CTX_INDEX .ordinal ()] = new GraalHPyAsIndex ();
460
461
members [HPyContextMembers .CTX_LONG .ordinal ()] = new GraalHPyCallBuiltinFunction (BuiltinNames .INT , 1 );
461
462
members [HPyContextMembers .CTX_FLOAT .ordinal ()] = new GraalHPyCallBuiltinFunction (BuiltinNames .FLOAT , 1 );
462
463
@@ -481,8 +482,6 @@ private static Object[] createMembers(PythonContext context) {
481
482
members [HPyContextMembers .CTX_INPLACEFLOORDIVIDE .ordinal ()] = new GraalHPyArithmetic (InplaceArithmetic .IFloorDiv );
482
483
members [HPyContextMembers .CTX_INPLACETRUEDIVIDE .ordinal ()] = new GraalHPyArithmetic (InplaceArithmetic .ITrueDiv );
483
484
members [HPyContextMembers .CTX_INPLACEREMAINDER .ordinal ()] = new GraalHPyArithmetic (InplaceArithmetic .IMod );
484
- // TODO(fa): IDivMod unsupported ?
485
- members [HPyContextMembers .CTX_INPLACEDIVMOD .ordinal ()] = null ;
486
485
members [HPyContextMembers .CTX_INPLACELSHIFT .ordinal ()] = new GraalHPyArithmetic (InplaceArithmetic .ILShift );
487
486
members [HPyContextMembers .CTX_INPLACERSHIFT .ordinal ()] = new GraalHPyArithmetic (InplaceArithmetic .IRShift );
488
487
members [HPyContextMembers .CTX_INPLACEAND .ordinal ()] = new GraalHPyArithmetic (InplaceArithmetic .IAnd );
0 commit comments