Add dynamic type for javascript arguments passed over bridge with unkown type

Reviewed By: astreet

Differential Revision: D4380882

fbshipit-source-id: f1b9fb9cf727d003dcc2264626e75fc300a47dee
This commit is contained in:
Emil Sjolander
2017-01-08 04:28:14 -08:00
committed by Facebook Github Bot
parent 3b5f04b002
commit e3c8d80b3c
14 changed files with 217 additions and 3 deletions

View File

@@ -0,0 +1,59 @@
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
package com.facebook.react.bridge;
/**
* Implementation of Dynamic wrapping a ReadableArray.
*/
public class DynamicFromArray implements Dynamic {
private final ReadableArray mArray;
private final int mIndex;
public DynamicFromArray(ReadableArray array, int index) {
mArray = array;
mIndex = index;
}
@Override
public boolean asBoolean() {
return mArray.getBoolean(mIndex);
}
@Override
public double asDouble() {
return mArray.getDouble(mIndex);
}
@Override
public int asInt() {
return mArray.getInt(mIndex);
}
@Override
public String asString() {
return mArray.getString(mIndex);
}
@Override
public ReadableArray asArray() {
return mArray.getArray(mIndex);
}
@Override
public ReadableMap asMap() {
return mArray.getMap(mIndex);
}
@Override
public ReadableType getType() {
return mArray.getType(mIndex);
}
}