Skip to content

Commit db3365f

Browse files
javachefacebook-github-bot
authored andcommitted
Convert com.facebook.react.bridge.ReadableNativeArray to Kotlin (facebook#47484)
Summary: Pull Request resolved: facebook#47484 Changelog: [Internal] Differential Revision: D65596278
1 parent ce838a4 commit db3365f

File tree

21 files changed

+139
-228
lines changed

21 files changed

+139
-228
lines changed

packages/react-native/ReactAndroid/api/ReactAndroid.api

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1482,7 +1482,7 @@ public class com/facebook/react/bridge/ReadableNativeArray : com/facebook/react/
14821482
public fun getDouble (I)D
14831483
public fun getDynamic (I)Lcom/facebook/react/bridge/Dynamic;
14841484
public fun getInt (I)I
1485-
public static fun getJNIPassCounter ()I
1485+
public static final fun getJNIPassCounter ()I
14861486
public fun getLong (I)J
14871487
public synthetic fun getMap (I)Lcom/facebook/react/bridge/ReadableMap;
14881488
public fun getMap (I)Lcom/facebook/react/bridge/ReadableNativeMap;

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ public class InterpolationAnimatedNode(config: ReadableMap) : ValueAnimatedNode(
130130
val outputRange = arrayOfNulls<DoubleArray>(size)
131131

132132
// Match the first pattern into a List, since we don't know its length yet
133-
var m = numericPattern.matcher(array.getString(0))
133+
var m = numericPattern.matcher(array.getString(0) ?: "")
134134
val firstOutputRange: MutableList<Double> = ArrayList()
135135
while (m.find()) {
136136
firstOutputRange.add(m.group().toDouble())
@@ -143,7 +143,7 @@ public class InterpolationAnimatedNode(config: ReadableMap) : ValueAnimatedNode(
143143
for (i in 1 until size) {
144144
val outputArr = DoubleArray(firstOutputRangeArr.size)
145145
var j = 0
146-
m = numericPattern.matcher(array.getString(i))
146+
m = numericPattern.matcher(array.getString(i) ?: "")
147147
while (m.find() && j < firstOutputRangeArr.size) {
148148
outputArr[j++] = m.group().toDouble()
149149
}

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/animated/ObjectAnimatedNode.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ internal class ObjectAnimatedNode(
4545
ReadableType.String -> result.pushString(source.getString(i))
4646
ReadableType.Map -> {
4747
val map = source.getMap(i)
48-
if (map.hasKey(NODE_TAG_KEY) && map.getType(NODE_TAG_KEY) == ReadableType.Number) {
48+
if (map != null &&
49+
map.hasKey(NODE_TAG_KEY) &&
50+
map.getType(NODE_TAG_KEY) == ReadableType.Number) {
4951
val node = nativeAnimatedNodesManager.getNodeById(map.getInt(NODE_TAG_KEY))
5052
requireNotNull(node) { "Mapped value node does not exist" }
5153
if (node is ValueAnimatedNode) {

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/animated/TransformAnimatedNode.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@ internal class TransformAnimatedNode(
1919
config: ReadableMap,
2020
private val nativeAnimatedNodesManager: NativeAnimatedNodesManager
2121
) : AnimatedNode() {
22-
private val transformConfigs: MutableList<TransformConfig>
22+
private val transformConfigs: List<TransformConfig>
2323

2424
init {
2525
val transforms = config.getArray("transforms")
2626
transformConfigs =
27-
if (transforms == null) mutableListOf()
27+
if (transforms == null) emptyList()
2828
else
29-
MutableList<TransformConfig>(transforms.size()) { i ->
30-
val transformConfigMap = transforms.getMap(i)
29+
List<TransformConfig>(transforms.size()) { i ->
30+
val transformConfigMap = checkNotNull(transforms.getMap(i))
3131
val property = transformConfigMap.getString("property")
3232
val type = transformConfigMap.getString("type")
3333
if (type == "animated") {
@@ -46,7 +46,7 @@ internal class TransformAnimatedNode(
4646

4747
public fun collectViewUpdates(propsMap: JavaOnlyMap) {
4848
val transforms =
49-
MutableList<JavaOnlyMap>(transformConfigs.size) { i ->
49+
List<JavaOnlyMap>(transformConfigs.size) { i ->
5050
val transformConfig = transformConfigs[i]
5151
val transform =
5252
if (transformConfig is AnimatedTransformConfig) {

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ private static boolean supportWideGamut() {
3434
private static final String ATTR_SEGMENT = "attr/";
3535

3636
@Nullable
37-
private static Integer getColorInteger(Object value, Context context) {
37+
private static Integer getColorInteger(@Nullable Object value, Context context) {
3838
if (value == null) {
3939
return null;
4040
}
@@ -84,7 +84,7 @@ private static Integer getColorInteger(Object value, Context context) {
8484
}
8585

8686
@Nullable
87-
public static Color getColorInstance(Object value, Context context) {
87+
public static Color getColorInstance(@Nullable Object value, Context context) {
8888
if (value == null) {
8989
return null;
9090
}
@@ -136,7 +136,7 @@ public static Color getColorInstance(Object value, Context context) {
136136
"ColorValue: the value must be a number or Object.");
137137
}
138138

139-
public static Integer getColor(Object value, Context context) {
139+
public static Integer getColor(@Nullable Object value, Context context) {
140140
try {
141141
if (supportWideGamut()) {
142142
Color color = getColorInstance(value, context);
@@ -150,7 +150,7 @@ public static Integer getColor(Object value, Context context) {
150150
return getColorInteger(value, context);
151151
}
152152

153-
public static Integer getColor(Object value, Context context, int defaultInt) {
153+
public static Integer getColor(@Nullable Object value, Context context, int defaultInt) {
154154
try {
155155
return getColor(value, context);
156156
} catch (JSApplicationCausedNativeException e) {

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,13 @@ public class JavaOnlyArray : ReadableArray, WritableArray {
7373

7474
override fun getLong(index: Int): Long = (backingList[index] as Number).toLong()
7575

76-
override fun getString(index: Int): String = backingList[index] as String
76+
override fun getString(index: Int): String? = backingList[index] as String?
7777

78-
override fun getArray(index: Int): ReadableArray = backingList[index] as ReadableArray
78+
override fun getArray(index: Int): ReadableArray? = backingList[index] as ReadableArray?
7979

8080
override fun getBoolean(index: Int): Boolean = backingList[index] as Boolean
8181

82-
override fun getMap(index: Int): ReadableMap = backingList[index] as ReadableMap
82+
override fun getMap(index: Int): ReadableMap? = backingList[index] as ReadableMap?
8383

8484
override fun getDynamic(index: Int): Dynamic = DynamicFromArray.create(this, index)
8585

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import java.util.ArrayList
1414
* to Kotlin.
1515
*/
1616
public interface ReadableArray {
17-
public fun getArray(index: Int): ReadableArray
17+
public fun getArray(index: Int): ReadableArray?
1818

1919
public fun getBoolean(index: Int): Boolean
2020

@@ -26,9 +26,9 @@ public interface ReadableArray {
2626

2727
public fun getLong(index: Int): Long
2828

29-
public fun getMap(index: Int): ReadableMap
29+
public fun getMap(index: Int): ReadableMap?
3030

31-
public fun getString(index: Int): String
31+
public fun getString(index: Int): String?
3232

3333
public fun getType(index: Int): ReadableType
3434

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java

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

0 commit comments

Comments
 (0)