summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/is-typedarray/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/is-typedarray/index.js')
-rw-r--r--deps/npm/node_modules/is-typedarray/index.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/deps/npm/node_modules/is-typedarray/index.js b/deps/npm/node_modules/is-typedarray/index.js
new file mode 100644
index 0000000000..58596036cd
--- /dev/null
+++ b/deps/npm/node_modules/is-typedarray/index.js
@@ -0,0 +1,41 @@
+module.exports = isTypedArray
+isTypedArray.strict = isStrictTypedArray
+isTypedArray.loose = isLooseTypedArray
+
+var toString = Object.prototype.toString
+var names = {
+ '[object Int8Array]': true
+ , '[object Int16Array]': true
+ , '[object Int32Array]': true
+ , '[object Uint8Array]': true
+ , '[object Uint8ClampedArray]': true
+ , '[object Uint16Array]': true
+ , '[object Uint32Array]': true
+ , '[object Float32Array]': true
+ , '[object Float64Array]': true
+}
+
+function isTypedArray(arr) {
+ return (
+ isStrictTypedArray(arr)
+ || isLooseTypedArray(arr)
+ )
+}
+
+function isStrictTypedArray(arr) {
+ return (
+ arr instanceof Int8Array
+ || arr instanceof Int16Array
+ || arr instanceof Int32Array
+ || arr instanceof Uint8Array
+ || arr instanceof Uint8ClampedArray
+ || arr instanceof Uint16Array
+ || arr instanceof Uint32Array
+ || arr instanceof Float32Array
+ || arr instanceof Float64Array
+ )
+}
+
+function isLooseTypedArray(arr) {
+ return names[toString.call(arr)]
+}