本文整理汇总了C++中circa_output函数的典型用法代码示例。如果您正苦于以下问题:C++ circa_output函数的具体用法?C++ circa_output怎么用?C++ circa_output使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了circa_output函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: round
void round(caStack* stack)
{
float input = circa_float_input(stack, 0);
if (input > 0.0)
set_int(circa_output(stack, 0), int(input + 0.5));
else
set_int(circa_output(stack, 0), int(input - 0.5));
}
开发者ID:RickMoynihan,项目名称:circa,代码行数:8,代码来源:math.cpp
示例2: test_oracle
void test_oracle(caStack* stack)
{
if (list_length(g_oracleValues) == 0)
set_null(circa_output(stack, 0));
else {
copy(list_get(g_oracleValues, 0), circa_output(stack, 0));
list_remove_index(g_oracleValues, 0);
}
}
开发者ID:whunmr,项目名称:circa,代码行数:9,代码来源:kernel.cpp
示例3: Branch__get_static_errors
void Branch__get_static_errors(caStack* stack)
{
Branch* branch = as_branch(circa_input(stack, 0));
if (is_null(&branch->staticErrors))
set_list(circa_output(stack, 0), 0);
else
copy(&branch->staticErrors, circa_output(stack, 0));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:9,代码来源:metaprogramming.cpp
示例4: Type__property
void Type__property(caStack* stack)
{
Type* type = as_type(circa_input(stack, 0));
const char* str = as_cstring(circa_input(stack, 1));
caValue* prop = get_type_property(type, str);
if (prop == NULL)
set_null(circa_output(stack, 0));
else
copy(prop, circa_output(stack, 0));
}
开发者ID:whunmr,项目名称:circa,代码行数:10,代码来源:kernel.cpp
示例5: Branch__owner
void Branch__owner(caStack* stack)
{
Branch* branch = as_branch(circa_input(stack, 0));
if (branch == NULL) {
set_term_ref(circa_output(stack, 0), NULL);
return;
}
set_term_ref(circa_output(stack, 0), branch->owningTerm);
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:10,代码来源:metaprogramming.cpp
示例6: String__to_camel_case
void String__to_camel_case(caStack* stack)
{
const char* in = circa_string_input(stack, 0);
set_string(circa_output(stack, 0), in);
char* out = (char*) as_cstring(circa_output(stack, 0));
if (out[0] == 0)
return;
out[0] = character_to_lower(out[0]);
}
开发者ID:whunmr,项目名称:circa,代码行数:11,代码来源:kernel.cpp
示例7: main
int main(int argc, char** argv)
{
caWorld* world = circa_initialize();
circa_load_module_from_file(world, "ClassA", "ClassA.ca");
// circa_dump_b(circa_kernel(world));
caStack* stack = circa_alloc_stack(world);
circa_push_function_by_name(stack, "create_ClassA");
circa_run(stack);
if (circa_has_error(stack))
circa_print_error_to_stdout(stack);
caValue* classA = circa_alloc_value();
circa_move(circa_output(stack, 0), classA);
circa_pop(stack);
// Dump to stdout
circa_push_function_by_name(stack, "ClassA.dump");
circa_copy(classA, circa_input(stack, 0));
circa_run(stack);
if (circa_has_error(stack))
circa_print_error_to_stdout(stack);
circa_pop(stack);
for (int i=0; i < 5; i++) {
// Increment
circa_push_function_by_name(stack, "ClassA.increment");
circa_copy(classA, circa_input(stack, 0));
circa_run(stack);
if (circa_has_error(stack))
circa_print_error_to_stdout(stack);
// Using index #1 not 0:
circa_move(circa_output(stack, 1), classA);
circa_pop(stack);
// And dump
circa_push_function_by_name(stack, "ClassA.dump");
circa_copy(classA, circa_input(stack, 0));
circa_run(stack);
if (circa_has_error(stack))
circa_print_error_to_stdout(stack);
circa_pop(stack);
}
circa_dealloc_value(classA);
circa_dealloc_stack(stack);
circa_shutdown(world);
}
开发者ID:RickMoynihan,项目名称:circa,代码行数:53,代码来源:sample1.cpp
示例8: Term__input
void Term__input(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL) {
circa_output_error(stack, "NULL reference");
return;
}
int index = circa_int_input(stack, 1);
if (index >= t->numInputs())
set_term_ref(circa_output(stack, 0), NULL);
else
set_term_ref(circa_output(stack, 0), t->input(index));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:13,代码来源:metaprogramming.cpp
示例9: unpack_state
// Unpack a state value. Input 1 is the "identifying term" which is used as a key.
void unpack_state(caStack* stack)
{
caValue* container = circa_input(stack, 0);
Term* identifyingTerm = (Term*) circa_caller_input_term(stack, 1);
caValue* element = get_field(container, unique_name(identifyingTerm));
if (element == NULL) {
set_null(circa_output(stack, 0));
} else {
copy(element, circa_output(stack, 0));
}
}
开发者ID:levelplane,项目名称:circa,代码行数:14,代码来源:stateful_code.cpp
示例10: Branch__get_static_errors_formatted
void Branch__get_static_errors_formatted(caStack* stack)
{
Branch* branch = as_branch(circa_input(stack, 0));
if (branch == NULL)
return circa_output_error(stack, "NULL branch");
if (is_null(&branch->staticErrors))
set_list(circa_output(stack, 0), 0);
caValue* errors = &branch->staticErrors;
caValue* out = circa_output(stack, 0);
set_list(out, circa_count(errors));
for (int i=0; i < circa_count(out); i++)
format_static_error(circa_index(errors, i), circa_index(out, i));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:15,代码来源:metaprogramming.cpp
示例11: Term__property
void Term__property(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL)
return circa_output_error(stack, "NULL reference");
const char* key = circa_string_input(stack, 1);
caValue* value = term_get_property(t, key);
if (value == NULL)
set_null(circa_output(stack, 0));
else
circa::copy(value, circa_output(stack, 0));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:15,代码来源:metaprogramming.cpp
示例12: Term__to_string
void Term__to_string(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL)
return circa_output_error(stack, "NULL reference");
set_string(circa_output(stack, 0), circa::to_string(term_value(t)));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例13: Branch__format_function_heading
void Branch__format_function_heading(caStack* stack)
{
Branch* branch = as_branch(circa_input(stack, 0));
caValue* output = circa_output(stack, 0);
circa_set_list(output, 0);
function_format_header_source(output, branch);
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例14: Term__properties
void Term__properties(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL)
return circa_output_error(stack, "NULL reference");
circa::copy(&t->properties, circa_output(stack, 0));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例15: Branch__version
void Branch__version(caStack* stack)
{
Branch* branch = as_branch(circa_input(stack, 0));
if (branch == NULL)
return circa_output_error(stack, "NULL branch");
set_int(circa_output(stack, 0), branch->version);
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例16: Branch__file_signature
void Branch__file_signature(caStack* stack)
{
Branch* branch = as_branch(circa_input(stack, 0));
if (branch == NULL)
return circa_output_error(stack, "NULL branch");
List* fileOrigin = branch_get_file_origin(branch);
if (fileOrigin == NULL)
set_null(circa_output(stack, 0));
else
{
List* output = set_list(circa_output(stack, 0), 2);
copy(fileOrigin->get(1), output->get(0));
copy(fileOrigin->get(2), output->get(1));
}
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:16,代码来源:metaprogramming.cpp
示例17: Term__type
void Term__type(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL)
return circa_output_error(stack, "NULL reference");
set_type(circa_output(stack, 0), t->type);
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例18: Term__function
void Term__function(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL)
return circa_output_error(stack, "NULL reference");
set_branch(circa_output(stack, 0), function_contents(as_function(t->function)));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例19: Term__to_source_string
void Term__to_source_string(caStack* stack)
{
Term* t = as_term_ref(circa_input(stack, 0));
if (t == NULL)
return circa_output_error(stack, "NULL reference");
set_string(circa_output(stack, 0), get_term_source_text(t));
}
开发者ID:julianhaslinger,项目名称:circa,代码行数:7,代码来源:metaprogramming.cpp
示例20: String__to_upper
void String__to_upper(caStack* stack)
{
const char* in = circa_string_input(stack, 0);
int len = (int) strlen(in);
set_string(circa_output(stack, 0), in);
char* out = (char*) as_cstring(circa_output(stack, 0));
for (int i=0; i < len; i++) {
char c = in[i];
if (c >= 'a' && c <= 'z')
c = c + 'A' - 'a';
out[i] = c;
}
}
开发者ID:whunmr,项目名称:circa,代码行数:16,代码来源:kernel.cpp
注:本文中的circa_output函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论