Loading...
Searching...
No Matches
mjs_primitive.h
1/*
2 * Copyright (c) 2016 Cesanta Software Limited
3 * All rights reserved
4 */
5
6#ifndef MJS_PRIMITIVE_H
7#define MJS_PRIMITIVE_H
8
9#include "mjs_primitive_public.h"
10#include "mjs_internal.h"
11
12#if defined(__cplusplus)
13extern "C" {
14#endif /* __cplusplus */
15
16/*
17 * Convert a pointer to mjs_val_t. If pointer is not valid, mjs crashes.
18 */
19MJS_PRIVATE mjs_val_t mjs_legit_pointer_to_value(void* p);
20
21/*
22 * Convert a pointer to mjs_val_t. If pointer is not valid, error is set
23 * in the mjs context.
24 */
25MJS_PRIVATE mjs_val_t mjs_pointer_to_value(struct mjs* mjs, void* p);
26
27/*
28 * Extracts a pointer from the mjs_val_t value.
29 */
30MJS_PRIVATE void* get_ptr(mjs_val_t v);
31
32/*
33 * Implementation for JS isNaN()
34 */
35MJS_PRIVATE void mjs_op_isnan(struct mjs* mjs);
36
37/*
38 * Implementation for JS Number.toString()
39 */
40MJS_PRIVATE void mjs_number_to_string(struct mjs* mjs);
41
42#if defined(__cplusplus)
43}
44#endif /* __cplusplus */
45
46#endif /* MJS_PRIMITIVE_H */
Definition mjs_core.h:63