Operating on JavaScript types

Operating on JavaScript types — Determining the type of a SeedValue

Synopsis


#include <seed/seed.h>

void                seed_value_unprotect                (SeedContext ctx,
                                                         SeedValue value);
void                seed_value_protect                  (SeedContext ctx,
                                                         SeedValue value);
gboolean            seed_value_is_undefined             (SeedContext ctx,
                                                         SeedValue value);
gboolean            seed_value_is_null                  (SeedContext ctx,
                                                         SeedValue value);
gboolean            seed_value_is_function              (SeedContext ctx,
                                                         SeedObject value);
gboolean            seed_value_is_number                (SeedContext ctx,
                                                         SeedValue value);
gboolean            seed_value_is_string                (SeedContext ctx,
                                                         SeedValue value);
gboolean            seed_value_is_object_of_class       (SeedContext ctx,
                                                         SeedValue value,
                                                         SeedClass klass);
gboolean            seed_value_is_object                (SeedContext ctx,
                                                         SeedValue value);
SeedType            seed_value_get_type                 (SeedContext ctx,
                                                         SeedValue value);

Description

Long description

Details

seed_value_unprotect ()

void                seed_value_unprotect                (SeedContext ctx,
                                                         SeedValue value);

Decrements the "protection count" of value, as explained in seed_value_protect().

ctx :

A SeedContext.

value :

The SeedValue to unprotect.

seed_value_protect ()

void                seed_value_protect                  (SeedContext ctx,
                                                         SeedValue value);

Increments the "protection count" of value, in case you want to store a reference somewhere where the garbage collector won't be able to find it, and don't want it to be collected!

In order for value to be collected afterwards, it will need to be unprotected the same number of times with seed_value_unprotect().

ctx :

A SeedContext.

value :

The SeedValue to protect.

seed_value_is_undefined ()

gboolean            seed_value_is_undefined             (SeedContext ctx,
                                                         SeedValue value);

ctx :

value :

Returns :


seed_value_is_null ()

gboolean            seed_value_is_null                  (SeedContext ctx,
                                                         SeedValue value);

ctx :

A SeedContext.

value :

A SeedValue.

Returns :

true if value represents NULL, false otherwise.

seed_value_is_function ()

gboolean            seed_value_is_function              (SeedContext ctx,
                                                         SeedObject value);

ctx :

A SeedContext.

value :

A SeedObject.

Returns :

true if value is a function (and therefore, an object), false otherwise.

seed_value_is_number ()

gboolean            seed_value_is_number                (SeedContext ctx,
                                                         SeedValue value);

ctx :

A SeedContext.

value :

A SeedValue.

Returns :

true if value is a number), false otherwise.

seed_value_is_string ()

gboolean            seed_value_is_string                (SeedContext ctx,
                                                         SeedValue value);

ctx :

A SeedContext.

value :

A SeedValue.

Returns :

true if value is a string, and false otherwise.

seed_value_is_object_of_class ()

gboolean            seed_value_is_object_of_class       (SeedContext ctx,
                                                         SeedValue value,
                                                         SeedClass klass);

ctx :

A SeedContext.

value :

A SeedValue.

klass :

A SeedClass.

Returns :

true if value is an object of specified class, false otherwise.

seed_value_is_object ()

gboolean            seed_value_is_object                (SeedContext ctx,
                                                         SeedValue value);

ctx :

A SeedContext.

value :

A SeedValue.

Returns :

true if value is an object, false otherwise.

seed_value_get_type ()

SeedType            seed_value_get_type                 (SeedContext ctx,
                                                         SeedValue value);

ctx :

A valid SeedContext

value :

A SeedValue

Returns :

The type of value