ec_node_clone - Man Page

Clone a grammar node.

Synopsis

#include <ecoli/node.h>

struct ec_node * ec_node_clone(
    struct ec_node   *node   /* The node to clone. */
);

Description

This function takes a reference to the node. If ec_node_free() is later called on this node, it will decrease only the reference. The free is effective when the reference count reaches 0. The reference counter is initialized to 1 at node creation.

Return Value

The pointer to the cloned node, always equal to the parameter. It returns NULL if the parameter was NULL: in this case, nothing is done.

See Also

ec_node_check_type(3), ec_node_iter(3), ec_node_attrs(3), ec_node_find(3), ec_node_type_name(3), ec_node_free(3), ec_node_id(3), ec_node_type_dump(3), ec_node_get_config(3), ec_node_schema_dump(3), ec_node_priv(3), ec_node_type_lookup(3), ec_node_dump(3), ec_node_desc(3), ec_node_iter_free(3), ec_node_iter_get_parent(3), ec_node_from_type(3), ec_node_type(3), ec_node_iter_next(3), ec_node_type_schema(3), ec_node(3), ec_node_get_children_count(3), ec_node_get_type_name(3), ec_node_type_register(3), ec_node_set_config(3), ec_node_iter_get_node(3), ec_node_get_child(3)

Referenced By

ec_node(3), ec_node_attrs(3), ec_node_check_type(3), ec_node_desc(3), ec_node_dump(3), ec_node_find(3), ec_node_free(3), ec_node_from_type(3), ec_node_get_child(3), ec_node_get_children_count(3), ec_node_get_config(3), ec_node_get_type_name(3), ec_node_id(3), ec_node_iter(3), ec_node_iter_free(3), ec_node_iter_get_node(3), ec_node_iter_get_parent(3), ec_node_iter_next(3), ec_node_priv(3), ec_node_schema_dump(3), ec_node_set_config(3), ec_node_type(3), ec_node_type_dump(3), ec_node_type_lookup(3), ec_node_type_name(3), ec_node_type_register(3), ec_node_type_schema(3).

2026-06-11 Libecoli Programmer's Manual