Skip to content

Commit b207e4d

Browse files
committed
Removed all usages of customConversion
1 parent e89ca7d commit b207e4d

File tree

2 files changed

+25
-45
lines changed

2 files changed

+25
-45
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/bytes/ByteArrayBuiltins.java

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,8 @@ public void initialize(PythonCore core) {
126126

127127
// bytearray([source[, encoding[, errors]]])
128128
@Builtin(name = __INIT__, minNumOfPositionalArgs = 1, parameterNames = {"$self", "source", "encoding", "errors"})
129-
@ArgumentClinic(name = "encoding", customConversion = "createExpectStringNodeEncoding")
130-
@ArgumentClinic(name = "errors", customConversion = "createExpectStringNodeErrors")
129+
@ArgumentClinic(name = "encoding", conversionClass = BytesNodes.ExpectStringNode.class, args = "\"bytearray()\"")
130+
@ArgumentClinic(name = "errors", conversionClass = BytesNodes.ExpectStringNode.class, args = "\"bytearray()\"")
131131
@GenerateNodeFactory
132132
public abstract static class InitNode extends PythonQuaternaryClinicBuiltinNode {
133133

@@ -136,14 +136,6 @@ protected ArgumentClinicProvider getArgumentClinic() {
136136
return ByteArrayBuiltinsClinicProviders.InitNodeClinicProviderGen.INSTANCE;
137137
}
138138

139-
public static BytesNodes.ExpectStringNode createExpectStringNodeEncoding() {
140-
return BytesNodesFactory.ExpectStringNodeGen.create(2, "bytearray()");
141-
}
142-
143-
public static BytesNodes.ExpectStringNode createExpectStringNodeErrors() {
144-
return BytesNodesFactory.ExpectStringNodeGen.create(3, "bytearray()");
145-
}
146-
147139
@Specialization(guards = "!isNone(source)")
148140
public static PNone doInit(VirtualFrame frame, PByteArray self, Object source, Object encoding, Object errors,
149141
@Cached BytesNodes.BytesInitNode toBytesNode) {

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/bytes/BytesBuiltins.java

Lines changed: 23 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969

7070
import com.oracle.graal.python.PythonLanguage;
7171
import com.oracle.graal.python.annotations.ArgumentClinic;
72+
import com.oracle.graal.python.annotations.ClinicConverterFactory;
7273
import com.oracle.graal.python.builtins.Builtin;
7374
import com.oracle.graal.python.builtins.CoreFunctions;
7475
import com.oracle.graal.python.builtins.PythonBuiltinClassType;
@@ -1210,11 +1211,16 @@ private byte check(byte b) {
12101211
}
12111212
return b;
12121213
}
1214+
1215+
@ClinicConverterFactory
1216+
public static SepExpectByteNode create(@ClinicConverterFactory.DefaultValue Object defaultValue) {
1217+
return BytesBuiltinsFactory.SepExpectByteNodeGen.create(defaultValue);
1218+
}
12131219
}
12141220

12151221
@Builtin(name = "hex", minNumOfPositionalArgs = 1, parameterNames = {"$self", "sep", "bytes_per_sep_group"})
1216-
@ArgumentClinic(name = "sep", customConversion = "createSepExpectByteNode")
1217-
@ArgumentClinic(name = "bytes_per_sep_group", customConversion = "createExpectIntNode", shortCircuitPrimitive = ArgumentClinic.PrimitiveType.Int)
1222+
@ArgumentClinic(name = "sep", conversionClass = SepExpectByteNode.class, defaultValue = "PNone.NO_VALUE")
1223+
@ArgumentClinic(name = "bytes_per_sep_group", conversionClass = ExpectIntNode.class, defaultValue = "1")
12181224
@GenerateNodeFactory
12191225
abstract static class HexNode extends PythonTernaryClinicBuiltinNode {
12201226

@@ -1223,14 +1229,6 @@ protected ArgumentClinicProvider getArgumentClinic() {
12231229
return BytesBuiltinsClinicProviders.HexNodeClinicProviderGen.INSTANCE;
12241230
}
12251231

1226-
public static SepExpectByteNode createSepExpectByteNode() {
1227-
return BytesBuiltinsFactory.SepExpectByteNodeGen.create(PNone.NO_VALUE);
1228-
}
1229-
1230-
public static ExpectIntNode createExpectIntNode() {
1231-
return BytesBuiltinsFactory.ExpectIntNodeGen.create(1);
1232-
}
1233-
12341232
@Specialization
12351233
String none(PBytesLike self, @SuppressWarnings("unused") PNone sep, @SuppressWarnings("unused") int bytesPerSepGroup,
12361234
@Cached.Shared("p") @Cached ConditionProfile earlyExit,
@@ -1603,7 +1601,7 @@ protected byte[] make(byte[] self, int len, int width, byte fill) {
16031601
}
16041602

16051603
@Builtin(name = "replace", minNumOfPositionalArgs = 3, parameterNames = {"$self", "old", "replacement", "count"})
1606-
@ArgumentClinic(name = "count", customConversion = "createExpectIntNode", shortCircuitPrimitive = ArgumentClinic.PrimitiveType.Int)
1604+
@ArgumentClinic(name = "count", conversionClass = ExpectIntNode.class, defaultValue = "Integer.MAX_VALUE")
16071605
@GenerateNodeFactory
16081606
abstract static class ReplaceNode extends PythonQuaternaryClinicBuiltinNode {
16091607

@@ -1612,10 +1610,6 @@ protected ArgumentClinicProvider getArgumentClinic() {
16121610
return BytesBuiltinsClinicProviders.ReplaceNodeClinicProviderGen.INSTANCE;
16131611
}
16141612

1615-
public static ExpectIntNode createExpectIntNode() {
1616-
return BytesBuiltinsFactory.ExpectIntNodeGen.create(Integer.MAX_VALUE);
1617-
}
1618-
16191613
@Specialization
16201614
PBytesLike replace(VirtualFrame frame, PBytesLike self, PBytesLike substr, PBytesLike replacement, int count,
16211615
@Cached SequenceStorageNodes.GetInternalByteArrayNode toInternalBytes,
@@ -1799,6 +1793,11 @@ int doOthers(VirtualFrame frame, Object value,
17991793
protected ExpectIntNode createRec() {
18001794
return BytesBuiltinsFactory.ExpectIntNodeGen.create(defaultValue);
18011795
}
1796+
1797+
@ClinicConverterFactory(shortCircuitPrimitive = ArgumentClinic.PrimitiveType.Int)
1798+
public static ExpectIntNode create(@ClinicConverterFactory.DefaultValue int defaultValue) {
1799+
return BytesBuiltinsFactory.ExpectIntNodeGen.create(defaultValue);
1800+
}
18021801
}
18031802

18041803
public abstract static class ExpectByteLikeNode extends ArgumentCastNode.ArgumentCastNodeWithRaise {
@@ -1832,6 +1831,11 @@ static byte[] doMemView(VirtualFrame frame, PMemoryView bytesLike,
18321831
byte[] error(@SuppressWarnings("unused") VirtualFrame frame, Object value) {
18331832
throw raise(TypeError, ErrorMessages.BYTESLIKE_OBJ_REQUIRED, value);
18341833
}
1834+
1835+
@ClinicConverterFactory
1836+
public static ExpectByteLikeNode create(@ClinicConverterFactory.DefaultValue byte[] defaultValue) {
1837+
return BytesBuiltinsFactory.ExpectByteLikeNodeGen.create(defaultValue);
1838+
}
18351839
}
18361840

18371841
abstract static class AbstractSplitNode extends PythonTernaryClinicBuiltinNode {
@@ -1938,8 +1942,8 @@ protected static Object asIndex(VirtualFrame frame, Object maxsplit, PythonObjec
19381942
}
19391943

19401944
@Builtin(name = "split", minNumOfPositionalArgs = 1, parameterNames = {"$self", "sep", "maxsplit"})
1941-
@ArgumentClinic(name = "sep", customConversion = "createExpectByteLikeNode")
1942-
@ArgumentClinic(name = "maxsplit", customConversion = "createExpectIntNode", shortCircuitPrimitive = ArgumentClinic.PrimitiveType.Int)
1945+
@ArgumentClinic(name = "sep", conversionClass = ExpectByteLikeNode.class, defaultValue = "BytesBuiltins.AbstractSplitNode.WHITESPACE")
1946+
@ArgumentClinic(name = "maxsplit", conversionClass = ExpectIntNode.class, defaultValue = "Integer.MAX_VALUE")
19431947
@GenerateNodeFactory
19441948
@TypeSystemReference(PythonArithmeticTypes.class)
19451949
abstract static class SplitNode extends AbstractSplitNode {
@@ -1955,14 +1959,6 @@ protected ArgumentClinicProvider getArgumentClinic() {
19551959
return BytesBuiltinsClinicProviders.SplitNodeClinicProviderGen.INSTANCE;
19561960
}
19571961

1958-
public static ExpectByteLikeNode createExpectByteLikeNode() {
1959-
return BytesBuiltinsFactory.ExpectByteLikeNodeGen.create(WHITESPACE);
1960-
}
1961-
1962-
public static ExpectIntNode createExpectIntNode() {
1963-
return BytesBuiltinsFactory.ExpectIntNodeGen.create(Integer.MAX_VALUE);
1964-
}
1965-
19661962
@Override
19671963
protected List<byte[]> splitWhitespace(byte[] bytes, int len, int maxsplit) {
19681964
int i, j, maxcount = maxsplit;
@@ -2042,8 +2038,8 @@ protected List<byte[]> splitDelimiter(byte[] bytes, int len, byte[] sep, int max
20422038
}
20432039

20442040
@Builtin(name = "rsplit", minNumOfPositionalArgs = 1, parameterNames = {"self", "sep", "maxsplit"})
2045-
@ArgumentClinic(name = "sep", customConversion = "createExpectByteLikeNode")
2046-
@ArgumentClinic(name = "maxsplit", customConversion = "createExpectIntNode", shortCircuitPrimitive = ArgumentClinic.PrimitiveType.Int)
2041+
@ArgumentClinic(name = "sep", conversionClass = ExpectByteLikeNode.class, defaultValue = "BytesBuiltins.AbstractSplitNode.WHITESPACE")
2042+
@ArgumentClinic(name = "maxsplit", conversionClass = ExpectIntNode.class, defaultValue = "Integer.MAX_VALUE")
20472043
@GenerateNodeFactory
20482044
@TypeSystemReference(PythonArithmeticTypes.class)
20492045
abstract static class RSplitNode extends AbstractSplitNode {
@@ -2059,14 +2055,6 @@ protected ArgumentClinicProvider getArgumentClinic() {
20592055
return BytesBuiltinsClinicProviders.RSplitNodeClinicProviderGen.INSTANCE;
20602056
}
20612057

2062-
public static ExpectByteLikeNode createExpectByteLikeNode() {
2063-
return BytesBuiltinsFactory.ExpectByteLikeNodeGen.create(WHITESPACE);
2064-
}
2065-
2066-
public static ExpectIntNode createExpectIntNode() {
2067-
return BytesBuiltinsFactory.ExpectIntNodeGen.create(Integer.MAX_VALUE);
2068-
}
2069-
20702058
@CompilerDirectives.TruffleBoundary
20712059
private static void reverseList(ArrayList<byte[]> list) {
20722060
Collections.reverse(list);

0 commit comments

Comments
 (0)