mirror of
https://github.com/robertkrimen/otto
synced 2025-10-12 20:27:30 +08:00

Enable more linters, address the issues and do a major naming refactor to use golang lower camelCase identifiers for types, functions, methods and variable names. Also: * Clean up inline generation so it doesn't rely on temporary variables. * Remove unused functions generated by inline.pl.
29 lines
719 B
Go
29 lines
719 B
Go
package otto
|
|
|
|
// Boolean
|
|
|
|
func builtinBoolean(call FunctionCall) Value {
|
|
return boolValue(call.Argument(0).bool())
|
|
}
|
|
|
|
func builtinNewBoolean(obj *object, argumentList []Value) Value {
|
|
return objectValue(obj.runtime.newBoolean(valueOfArrayIndex(argumentList, 0)))
|
|
}
|
|
|
|
func builtinBooleanToString(call FunctionCall) Value {
|
|
value := call.This
|
|
if !value.IsBoolean() {
|
|
// Will throw a TypeError if ThisObject is not a Boolean
|
|
value = call.thisClassObject(classBooleanName).primitiveValue()
|
|
}
|
|
return stringValue(value.string())
|
|
}
|
|
|
|
func builtinBooleanValueOf(call FunctionCall) Value {
|
|
value := call.This
|
|
if !value.IsBoolean() {
|
|
value = call.thisClassObject(classBooleanName).primitiveValue()
|
|
}
|
|
return value
|
|
}
|