1 // Copyright © 2021-present 650 Industries, Inc. (aka Expo) 2 3 #pragma once 4 5 namespace expo { 6 /** 7 * A cpp version of the `expo.modules.kotlin.jni.CppType` enum. 8 * Used to determine which representation of the js value should be sent to the Kotlin. 9 */ 10 enum CppType { 11 NONE = 0, 12 DOUBLE = 1 << 0, 13 INT = 1 << 1, 14 LONG = 1 << 2, 15 FLOAT = 1 << 3, 16 BOOLEAN = 1 << 4, 17 STRING = 1 << 5, 18 JS_OBJECT = 1 << 6, 19 JS_VALUE = 1 << 7, 20 READABLE_ARRAY = 1 << 8, 21 READABLE_MAP = 1 << 9, 22 TYPED_ARRAY = 1 << 10, 23 PRIMITIVE_ARRAY = 1 << 11, 24 LIST = 1 << 12, 25 MAP = 1 << 13, 26 VIEW_TAG = 1 << 14, 27 SHARED_OBJECT_ID = 1 << 15, 28 JS_FUNCTION = 1 << 16 29 }; 30 } // namespace expo 31