Libraries/jerryscript/src/include/Jerryscript/Types.h
Go to the documentation of this file.
241 Value(const String& s) : value(jerry_create_string_sz(reinterpret_cast<const jerry_char_t*>(s.c_str()), s.length()))
541 ExternalFunction(jerry_external_handler_t handler) : Value(OwnedValue{jerry_create_external_function(handler)})
736 Error(ErrorType type) : Value(OwnedValue{jerry_create_error_sz(jerry_error_t(type), nullptr, 0)})
745 jerry_error_t(type), reinterpret_cast<const jerry_char_t*>(message.c_str()), message.length())})
797 ArgumentError(const String& functionName) : Error(ErrorType::Type, functionName + F(": Invalid arguments"))
String toString(Jerryscript::Type type)
#define JERRY_ECMA_MAP(XX)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:53
#define F(string_literal)
Wrap a string literal stored in flash and access it using a String object.
Definition: WString.h:113
Provides consistent error message when checking external function arguments.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:795
ArgumentError(const String &functionName)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:797
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:854
Iterator operator++(int)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:874
Iterator operator+=(size_t distance)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:881
std::ptrdiff_t difference_type
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:858
Iterator(Array &array, unsigned index)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:864
IndexedItem operator*()
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:898
bool operator!=(const Iterator &rhs) const
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:893
std::random_access_iterator_tag iterator_category
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:856
Iterator & operator++()
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:868
Iterator(const Iterator &)=default
bool operator==(const Iterator &rhs) const
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:888
Array objects have properties accessed by index.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:806
Value setProperty(unsigned index, const Value &value)
Set a property value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:979
const Value operator[](unsigned index) const
const operator[] returns value directly
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:958
IndexedItem operator[](unsigned index)
operator[] uses IndexedItem proxy object so value can be assigned or read
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:950
Array(size_t size)
Create a new, fixed-size array with the given number of elements.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:912
Value getProperty(unsigned index) const
Get a property value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:968
Iterator end()
end
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:936
Iterator begin()
begin
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:930
size_t count() const
Get number of elements in the array.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:919
Callable object represent functions.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:990
Value call(const Object &thisValue, const Value &arg)
Call with one argument.
FunctionType functionType() const
Get specific type of callable object.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:1011
Value call(const Object &thisValue, std::initializer_list< Value > args={})
Call with zero or multiple arguments.
Error object class.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:724
ErrorType errorType() const
Get type of error.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:767
Error(ErrorType type, const String &message)
Error with type and message.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:743
Error(Value &&value)
Move constructor.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:760
Error(ErrorType type)
Error with type only.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:736
Error(const Value &value)
Copy constructor.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:753
Object representing an external function implementation.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:539
ExternalFunction(jerry_external_handler_t handler)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:541
Objects support named properties.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:550
Value setProperty(const Value &name, const Value &value)
Set a property value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:635
bool hasProperty(const Value &name) const
Determine if a property exists.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:655
bool unregisterFunction(const String &name)
Unregister an external function.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:708
bool removeProperty(const Value &name)
Remove a property.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:665
Callable getFunction(const String &name)
Retrieve the given property as a function.
bool registerFunction(const String &name, jerry_external_handler_t handler)
Register an external function so it may be called from javascript.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:697
Value getProperty(const Value &name) const
Get a property value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:645
Value runFunction(const String &name, Value &arg)
Call a specified JavaScript function with exactly one argument.
Object()
Default constructor creates a new, empty object.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:596
NamedItem operator[](const String &name)
operator[] uses NamedItem proxy object so value can be assigned or read
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:616
Value runFunction(const String &name, std::initializer_list< Value > args={})
Call a specified JavaScript function with zero or more arguments.
Value()
Construct An empty (unused) value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:160
Object(Value &&value)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:604
const Value operator[](const String &name) const
const operator[] returns Value directly
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:624
Object(const Value &value)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:600
Represents a Jerryscript value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:153
Value & operator=(const Value &value)
Assignment copy operator.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:268
~Value()
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:260
bool isNumber() const
Does this value contain a Number?
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:428
const jerry_value_t & get() const
const get()
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:306
Value(const OwnedValue &value)
Construct a Value and take ownership of the given native value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:167
bool isEmpty() const
An empty Value contains nothing, i.e. no javascript type has been assigned. This gets interpreted as ...
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:364
Value(const String &s)
Wiring String.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:241
Value(const Null &value)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:189
jerry_value_t release()
Get raw/native value and release ownership.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:323
bool isObject() const
Is this an Object type? If so, can cast to Object class.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:420
T as() const
Get value of object with specific type. e.g. value.as<int>().
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:521
bool isDefined() const
Contains a javascript value, but contents undefined.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:372
jerry_value_t & get()
get()
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:314
Value(const StringValue &value)
Construct a string Value from the given native value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:181
Type type() const
Get value type.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:437
Value(const char *s)
NUL-terminated 'C' string.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:248
bool isTrue() const
Is this a Boolean type set to True?
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:396
bool isCallable() const
Is this object a function? If so, can cast to Callable type.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:338
bool isNull() const
Is this a NULL value?
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:404
Value & operator=(Value &&value)
Assignment move operator.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:277
bool isBoolean() const
A true/false value type.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:380
bool isString() const
Is this a String?
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:412
String subString(unsigned offset, size_t length) const
Get content from within a string value.
Value(bool value)
Boolean.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:234
bool isFalse() const
Is this a Boolean type set to False?
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:388
Value toString() const
Create a new string value from this value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:450
bool isError() const
Determine if value represents an error. If so, can cast to Error type.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:355
size_t readString(unsigned offset, char *buffer, size_t length) const
Get content from within a string value.
Value(const CopyValue &value)
Construct a Value using a copy (or reference to) the given native value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:174
Value(const Undefined &value)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:185
Value(double value)
floating-point
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:227
bool isArray() const
Can this object be accessed as an array? If so, can cast to Array type.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:346
Value & reset(jerry_value_t value=jerry_value_t(Ecma::VALUE_EMPTY))
Reset contents of object to new value (default is unassigned)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:289
Value(Value &&value)
Move constructor.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:203
Value(const FSTR::String &s)
Flash String.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:255
Value(const Value &value)
Copy constructor.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:196
Value()
Construct An empty (unused) value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:160
Definition: Libraries/jerryscript/src/include/Jerryscript/Context.h:124
Object global()
Get global context.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:1020
XX(jt, t)
ObjectType
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:34
XX(jt, t)
XX(name, value)
XX(jt, t)
XX(jt, t)
FunctionType
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:40
XX(jt, t)
Iterator and operator[] access uses this wrapper class so items may be written or read.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:813
IndexedItem & operator=(const Value &value)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:830
bool operator==(const IndexedItem &rhs) const
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:836
unsigned index() const
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:815
Use to initialise Value object by copying native/raw jerryscript value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:85
jerry_value_t value
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:86
Use to create Value containing javascript 'null'.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:116
const jerry_value_t value
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:121
Iterator and operator[] access uses this wrapper class so items may be written or read.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:557
NamedItem & operator=(const Value &value)
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:574
const String & name() const
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:559
Use to initialise Value object by taking ownership of native/raw jerryscript value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:76
jerry_value_t value
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:77
Use to initialise Value object to a string given a native/raw jerryscript value.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:94
jerry_value_t value
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:95
Use to create Value containing javascript 'undefined'.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:103
Undefined()
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:104
const jerry_value_t value
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:108
Used by as() method.
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:480
const Value & v
Definition: Libraries/jerryscript/src/include/Jerryscript/Types.h:481