<commit_before>/*
 * Copyright 2012 2013 <NAME> <<EMAIL>>
 * See COPYING for terms of redistribution.
 */

#ifndef JIVE_TYPES_FUNCTION_FCTAPPLY_H
#define JIVE_TYPES_FUNCTION_FCTAPPLY_H

#include <jive/vsdg/node.h>

typedef struct jive_apply_node jive_apply_node;

extern const jive_node_class JIVE_APPLY_NODE;

struct jive_apply_node {
	jive_node base;
};

jive_node *
jive_apply_node_create(jive_region * region, jive_output * function,
	size_t narguments, jive_output * const arguments[]);

void
jive_apply_create(jive_output * function, size_t narguments, jive_output * const arguments[],
	jive_output * results[]);

JIVE_EXPORTED_INLINE jive_apply_node *
jive_apply_node_cast(jive_node * node)
{
	if (jive_node_isinstance(node, &JIVE_APPLY_NODE))
		return (jive_apply_node *) node;
	else
		return NULL;
}

JIVE_EXPORTED_INLINE const struct jive_apply_node *
jive_apply_node_const_cast(const struct jive_node * node)
{
	if (jive_node_isinstance(node, &JIVE_APPLY_NODE))
		return (const jive_apply_node *) node;
	else
		return NULL;
}<commit_msg>function: jive_apply_node_const_cast<commit_after>/*
 * Copyright 2012 2013 <NAME> <<EMAIL>>
 * See COPYING for terms of redistribution.
 */

#ifndef JIVE_TYPES_FUNCTION_FCTAPPLY_H
#define JIVE_TYPES_FUNCTION_FCTAPPLY_H

#include <jive/vsdg/node.h>

typedef struct jive_apply_node jive_apply_node;

extern const jive_node_class JIVE_APPLY_NODE;

struct jive_apply_node {
	jive_node base;
};

jive_node *
jive_apply_node_create(jive_region * region, jive_output * function,
	size_t narguments, jive_output * const arguments[]);

void
jive_apply_create(jive_output * function, size_t narguments, jive_output * const arguments[],
	jive_output * results[]);

JIVE_EXPORTED_INLINE jive_apply_node *
jive_apply_node_cast(jive_node * node)
{
	if (jive_node_isinstance(node, &JIVE_APPLY_NODE))
		return (jive_apply_node *) node;
	else
		return NULL;
}

JIVE_EXPORTED_INLINE const struct jive_apply_node *
jive_apply_node_const_cast(const struct jive_node * node)
{
	if (jive_node_isinstance(node, &JIVE_APPLY_NODE))
		return (const struct jive_apply_node *) node;
	else
		return NULL;
}
{'fraction_non_alphanumeric': 0.08419567262464722, 'fraction_numerical': 0.007525870178739417, 'mean_word_length': 6.791208791208791, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4026607', 'n_tokens_mistral': 849, 'n_tokens_neox': 823, 'n_words': 164}