MCPcopy Create free account
hub / github.com/Snapchat/Valdi / valueToBool

Method valueToBool

valdi/src/valdi/hermes/HermesJavaScriptContext.cpp:846–860  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

844}
845
846bool HermesJavaScriptContext::valueToBool(const JSValue& value, JSExceptionTracker& exceptionTracker) {
847 hermes::vm::GCScope gcScope(*_runtime);
848 auto hermesValue = toHermesValue(value);
849 if (hermesValue.isUndefined() || hermesValue.isNull()) {
850 return false;
851 } else if (hermesValue.isNumber()) {
852 return hermesValue.getNumber() != 0;
853 } else if (hermesValue.isBool()) {
854 return hermesValue.getBool();
855 } else if (hermesValue.isString()) {
856 return hermesValue.getString()->getSize() != 0;
857 } else {
858 return true;
859 }
860}
861
862double HermesJavaScriptContext::valueToDouble(const JSValue& value, JSExceptionTracker& exceptionTracker) {
863 hermes::vm::GCScope gcScope(*_runtime);

Callers

nothing calls this directly

Calls 9

getNumberMethod · 0.80
isBoolMethod · 0.80
getStringMethod · 0.65
isUndefinedMethod · 0.45
isNullMethod · 0.45
isNumberMethod · 0.45
getBoolMethod · 0.45
isStringMethod · 0.45
getSizeMethod · 0.45

Tested by

no test coverage detected