本文整理汇总了C++中CL_TRUEP函数的典型用法代码示例。如果您正苦于以下问题:C++ CL_TRUEP函数的具体用法?C++ CL_TRUEP怎么用?C++ CL_TRUEP使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了CL_TRUEP函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: null_or_quoted
void null_or_quoted(CL_FORM *base)
{
if(CL_TRUEP(ARG(0)))
{
LOAD_NIL(ARG(1));
}
else
{
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(1)); /* T */
}
if(CL_TRUEP(ARG(1)))
{
COPY(ARG(1), ARG(0));
}
else
{
if(CL_CONSP(ARG(0)))
{
COPY(GET_CAR(ARG(0)), ARG(2));
LOAD_BOOL(EQ(ARG(2), SYMVAL(Slisp, 444)), ARG(0)); /* *BQ-QUOTE* */
}
else
{
LOAD_NIL(ARG(0));
}
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:27,代码来源:lisp503.c
示例2: uninterned_reader
void uninterned_reader(CL_FORM *base)
{
if(CL_TRUEP(ARG(2)))
{
LOAD_SMSTR((CL_FORM *)&KClisp[208], ARG(3)); /* extra argument for #~S */
COPY(ARG(1), ARG(4));
Ferror(ARG(3), 2);
}
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(3)); /* T */
BIND_SPECIAL(SYMBOL(Slisp, 443), ARG(3)); /* *UNINTERNED* */
COPY(ARG(0), ARG(4));
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(5)); /* T */
LOAD_NIL(ARG(6));
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(7)); /* T */
read1(ARG(4));
bool_result = CL_TRUEP(SYMVAL(Slisp, 408)); /* *READ-SUPPRESS* */
if(bool_result)
{
LOAD_NIL(ARG(0));
}
else
{
if(CL_SYMBOLP(ARG(4)) || CL_NILP(ARG(4)))
{
COPY(ARG(4), ARG(0));
}
else
{
LOAD_SMSTR((CL_FORM *)&Kuninterned_reader[0], ARG(0)); /* illegal value (~S) followed #: */
COPY(ARG(4), ARG(1));
Ferror(ARG(0), 2);
}
}
RESTORE_SPECIAL;
}
开发者ID:plops,项目名称:clicc,代码行数:35,代码来源:lisp545.c
示例3: nunion1
void nunion1(CL_FORM *base)
{
CL_FORM *display[1];
GEN_HEAPVAR(ARG(3), ARG(5));
if(CL_TRUEP(ARG(2)))
{
}
else
{
if(CL_TRUEP(INDIRECT(ARG(3))))
{
GEN_CLOSURE(array, ARG(5), 4, Z7_lambda, -1);
COPY(ARG(3), &array[3]);
LOAD_CLOSURE(array, ARG(5));
COPY(ARG(5), ARG(2));
}
else
{
GEN_STATIC_GLOBAL_FUNARG(extern_closure, Feql, 2);
LOAD_GLOBFUN(&extern_closure, ARG(2));
}
}
COPY(ARG(0), ARG(5));
display[0] = ARG(0);
Z6_union_internal(ARG(5), display);
COPY(ARG(5), ARG(0));
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:27,代码来源:nunion1.c
示例4: Z70_lambda
static void Z70_lambda(CL_FORM *base)
{
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(1));
COPY(INDIRECT(GET_FORM(ARG(0)) + 4), ARG(2));
Flt(ARG(1), 2);
if(CL_TRUEP(ARG(1)))
{
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(1));
Fstringp(ARG(1));
if(CL_TRUEP(ARG(1)))
{
}
else
{
COPY(SYMVAL(Slisp, 58), ARG(1)); /* WRONG_TYPE */
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(2));
LOAD_SYMBOL(SYMBOL(Slisp, 44), ARG(3)); /* STRING */
Ferror(ARG(1), 3);
}
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(1));
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(2));
Frow_major_aref(ARG(1));
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(2));
F1plus(ARG(2));
COPY(ARG(2), INDIRECT(GET_FORM(ARG(0)) + 5));
COPY(ARG(1), ARG(0));
}
else
{
LOAD_NIL(ARG(0));
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:32,代码来源:lisp159.c
示例5: Flength
void Flength(CL_FORM *base)
{
if(CL_TRUEP(ARG(0)))
{
if(CL_CONSP(ARG(0)))
{
LOAD_FIXNUM(ARG(1), 0, ARG(1));
COPY(ARG(0), ARG(2));
M1_1:;
if(CL_ATOMP(ARG(2)))
{
goto RETURN1;
}
F1plus(ARG(1));
COPY(ARG(2), ARG(3));
COPY(GET_CDR(ARG(3)), ARG(2));
goto M1_1;
RETURN1:;
COPY(ARG(1), ARG(0));
}
else
{
if(CL_SMVECP(ARG(0)))
{
LOAD_FIXNUM(ARG(2), AR_SIZE(GET_FORM(ARG(0))), ARG(0));
}
else
{
COPY(ARG(0), ARG(1));
LOAD_SYMBOL(SYMBOL(Slisp, 150), ARG(2)); /* COMPLEX-VECTOR */
rt_struct_typep(ARG(1));
if(CL_TRUEP(ARG(1)))
{
COPY(ARG(0), ARG(1));
complex_vector_fillptr(ARG(1));
Fminusp(ARG(1));
if(CL_TRUEP(ARG(1)))
{
complex_vector_length(ARG(0));
}
else
{
complex_vector_fillptr(ARG(0));
}
}
else
{
COPY(SYMVAL(Slisp, 58), ARG(1)); /* WRONG_TYPE */
COPY(ARG(0), ARG(2));
LOAD_SYMBOL(SYMBOL(Slisp, 36), ARG(3)); /* SEQUENCE */
Ferror(ARG(1), 3);
}
}
}
}
else
{
LOAD_FIXNUM(ARG(1), 0, ARG(0));
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:60,代码来源:Flength.c
示例6: Fboundp
void Fboundp(CL_FORM *base)
{
if(CL_SYMBOLP(ARG(0)))
{
COPY(SYM_VALUE(ARG(0)), ARG(1));
LOAD_BOOL(CL_UNBOUNDP(ARG(1)), ARG(1));
if(CL_TRUEP(ARG(1)))
{
LOAD_NIL(ARG(0));
}
else
{
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(0)); /* T */
}
}
else
{
if(CL_TRUEP(ARG(0)))
{
COPY(SYMVAL(Slisp, 676), ARG(1)); /* SYM_EXPECTED */
COPY(ARG(0), ARG(2));
Ferror(ARG(1), 2);
}
else
{
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(0)); /* T */
}
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:29,代码来源:Fboundp.c
示例7: rt_copy_struct
void rt_copy_struct(CL_FORM *base)
{
COPY(ARG(0), ARG(2));
COPY(ARG(1), ARG(3));
rt_struct_typep(ARG(2));
if(CL_TRUEP(ARG(2)))
{
}
else
{
COPY(SYMVAL(Slisp, 352), ARG(2)); /* NO_STRUCT */
COPY(ARG(0), ARG(3));
COPY(ARG(1), ARG(4));
Ferror(ARG(2), 3);
}
LOAD_FIXNUM(ARG(3), AR_SIZE(GET_FORM(ARG(0))), ARG(2));
COPY(ARG(2), ARG(3));
rt_new_struct(ARG(3));
COPY(ARG(1), OFFSET(AR_BASE(GET_FORM(ARG(3))), -1 + 1));
LOAD_FIXNUM(ARG(4), 0, ARG(4));
M1_1:;
COPY(ARG(4), ARG(5));
COPY(ARG(2), ARG(6));
Fge(ARG(5), 2);
if(CL_TRUEP(ARG(5)))
{
COPY(ARG(3), ARG(0));
goto RETURN1;
}
COPY(OFFSET(AR_BASE(GET_FORM(ARG(0))), GET_FIXNUM(ARG(4)) + 1), ARG(5));
COPY(ARG(5), OFFSET(AR_BASE(GET_FORM(ARG(3))), GET_FIXNUM(ARG(4)) + 1));
F1plus(ARG(4));
goto M1_1;
RETURN1:;
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:35,代码来源:lisp421.c
示例8: radix_reader
void radix_reader(CL_FORM *base)
{
if(CL_TRUEP(SYMVAL(Slisp, 418))) /* *READ-SUPPRESS* */
{
COPY(ARG(0), ARG(3));
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(4)); /* T */
LOAD_NIL(ARG(5));
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(6)); /* T */
read_char1(ARG(3));
COPY(ARG(0), ARG(4));
COPY(ARG(3), ARG(5));
read_token(ARG(4));
LOAD_NIL(ARG(0));
}
else
{
if(CL_TRUEP(ARG(2)))
{
LOAD_FIXNUM(ARG(3), 2, ARG(3));
COPY(ARG(2), ARG(4));
LOAD_FIXNUM(ARG(5), 36, ARG(5));
Fle(ARG(3), 3);
if(CL_TRUEP(ARG(3)))
{
COPY(ARG(2), ARG(3));
BIND_SPECIAL(SYMBOL(Slisp, 417), ARG(3)); /* *READ-BASE* */
COPY(ARG(0), ARG(3));
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(4)); /* T */
LOAD_NIL(ARG(5));
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(6)); /* T */
read1(ARG(3));
RESTORE_SPECIAL;
if(CL_FIXNUMP(ARG(3)))
{
}
else
{
LOAD_SMSTR((CL_FORM *)&Kradix_reader[0], ARG(4)); /* #~A (base ~D) value is not a rational: ~S. */
COPY(ARG(1), ARG(5));
COPY(ARG(2), ARG(6));
COPY(ARG(3), ARG(7));
Ferror(ARG(4), 4);
}
COPY(ARG(3), ARG(0));
}
else
{
LOAD_SMSTR((CL_FORM *)&Kradix_reader[2], ARG(0)); /* Illegal radix for #R: ~D. */
COPY(ARG(2), ARG(1));
Ferror(ARG(0), 2);
}
}
else
{
LOAD_SMSTR((CL_FORM *)&Kradix_reader[4], ARG(0)); /* Radix missing in #R. */
Ferror(ARG(0), 1);
}
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:59,代码来源:radix_reader.c
示例9: Z131_get_rest_args
static void Z131_get_rest_args(CL_FORM *base, CL_FORM *display[])
{
if(CL_ATOMP(ARG(0)))
{
LOAD_NIL(ARG(0));
}
else
{
COPY(GET_CAR(ARG(0)), ARG(1));
if(CL_ATOMP(ARG(1)))
{
COPY(&display[1][0], ARG(1));
LOAD_NIL(ARG(2));
call_cont(ARG(1));
}
COPY(GET_CAR(ARG(0)), ARG(1));
if(CL_CONSP(ARG(1)))
{
COPY(GET_CAR(ARG(1)), ARG(2));
}
else
{
if(CL_TRUEP(ARG(1)))
{
LOAD_SMSTR((CL_FORM *)&KClisp[264], ARG(2)); /* ~a is not a list */
COPY(ARG(1), ARG(3));
Ferror(ARG(2), 2);
}
else
{
COPY(ARG(1), ARG(2));
}
}
COPY(ARG(1), ARG(3));
COPY(ARG(3), ARG(4));
if(CL_CONSP(ARG(4)))
{
COPY(GET_CDR(ARG(4)), ARG(1));
}
else
{
if(CL_TRUEP(ARG(4)))
{
LOAD_SMSTR((CL_FORM *)&KClisp[262], ARG(5)); /* ~a is not a list */
COPY(ARG(4), ARG(6));
Ferror(ARG(5), 2);
}
else
{
COPY(ARG(4), ARG(1));
}
}
COPY(ARG(1), GET_CAR(ARG(0)));
COPY(&display[0][1], ARG(1));
COPY(GET_CDR(ARG(0)), ARG(2));
Z131_get_rest_args(ARG(2), display);
ALLOC_CONS(ARG(3), ARG(1), ARG(2), ARG(0));
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:59,代码来源:Fmapcon.c
示例10: Fstring_left_trim
void Fstring_left_trim(CL_FORM *base)
{
Fstring(ARG(1));
LOAD_FIXNUM(ARG(2), 0, ARG(2));
M1_1:;
COPY(ARG(2), ARG(3));
COPY(ARG(1), ARG(4));
Flength(ARG(4));
Fnumeql(ARG(3), 2);
if(CL_TRUEP(ARG(3)))
{
LOAD_SMSTR((CL_FORM *)&KClisp[70], ARG(0)); /* */
goto RETURN1;
}
COPY(ARG(1), ARG(3));
Fstringp(ARG(3));
if(CL_TRUEP(ARG(3)))
{
}
else
{
COPY(SYMVAL(Slisp, 58), ARG(3)); /* WRONG_TYPE */
COPY(ARG(1), ARG(4));
LOAD_SYMBOL(SYMBOL(Slisp, 44), ARG(5)); /* STRING */
Ferror(ARG(3), 3);
}
COPY(ARG(1), ARG(3));
COPY(ARG(2), ARG(4));
Frow_major_aref(ARG(3));
COPY(ARG(0), ARG(4));
LOAD_SYMBOL(SYMBOL(Slisp, 282), ARG(5)); /* TEST */
LOAD_GLOBFUN(&CFcharE, ARG(6));
Ffind(ARG(3), 4);
if(CL_TRUEP(ARG(3)))
{
}
else
{
goto RETURN2;
}
F1plus(ARG(2));
goto M1_1;
RETURN2:;
COPY(ARG(2), ARG(3));
Fzerop(ARG(3));
if(CL_TRUEP(ARG(3)))
{
COPY(ARG(1), ARG(0));
}
else
{
COPY(ARG(1), ARG(0));
COPY(ARG(2), ARG(1));
LOAD_NIL(ARG(2));
subseq1(ARG(0));
}
RETURN1:;
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:58,代码来源:lisp767.c
示例11: Z87_readc
static void Z87_readc(CL_FORM *base)
{
if(CL_TRUEP(INDIRECT(GET_FORM(ARG(0)) + 3)))
{
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(1));
if(CL_CONSP(ARG(1)))
{
COPY(GET_CAR(ARG(1)), ARG(1));
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[239], ARG(2)); /* ~a is not a list */
COPY(ARG(1), ARG(3));
Ferror(ARG(2), 2);
}
stream_readc(ARG(1));
Ffuncall(ARG(1), 1);
mv_count = 1;
if(CL_TRUEP(ARG(1)))
{
COPY(ARG(1), ARG(0));
}
else
{
if(CL_CONSP(INDIRECT(GET_FORM(ARG(0)) + 3)))
{
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[239], ARG(2)); /* ~a is not a list */
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(3));
Ferror(ARG(2), 2);
}
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(2));
COPY(ARG(2), ARG(3));
if(CL_CONSP(ARG(3)))
{
COPY(GET_CDR(ARG(3)), INDIRECT(GET_FORM(ARG(0)) + 3));
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[241], ARG(4)); /* ~a is not a list */
COPY(ARG(3), ARG(5));
Ferror(ARG(4), 2);
}
COPY(ARG(0), ARG(2));
Z87_readc(ARG(2));
COPY(ARG(2), ARG(0));
}
}
else
{
LOAD_NIL(ARG(0));
}
}
开发者ID:plops,项目名称:clicc,代码行数:55,代码来源:lisp192.c
示例12: Fpathname
void Fpathname(CL_FORM *base)
{
COPY(ARG(0), ARG(1));
LOAD_SYMBOL(SYMBOL(Slisp, 234), ARG(2)); /* PATHNAME */
rt_struct_typep(ARG(1));
if(CL_TRUEP(ARG(1)))
{
COPY(ARG(0), ARG(1));
}
else
{
COPY(ARG(0), ARG(1));
Fstringp(ARG(1));
if(CL_TRUEP(ARG(1)))
{
COPY(ARG(0), ARG(1));
LOAD_NIL(ARG(2));
COPY(SYMVAL(Slisp, 233), ARG(3)); /* *DEFAULT-PATHNAME-DEFAULTS* */
LOAD_FIXNUM(ARG(4), 0, ARG(4));
LOAD_NIL(ARG(5));
LOAD_NIL(ARG(6));
parse_namestring1(ARG(1));
mv_count = 1;
}
else
{
COPY(ARG(0), ARG(1));
LOAD_SYMBOL(SYMBOL(Slisp, 64), ARG(2)); /* STREAM */
rt_struct_typep(ARG(1));
if(CL_TRUEP(ARG(1)))
{
COPY(ARG(0), ARG(1));
LOAD_NIL(ARG(2));
file_name1(ARG(1));
COPY(SYMVAL(Slisp, 233), ARG(2)); /* *DEFAULT-PATHNAME-DEFAULTS* */
COPY(ARG(1), ARG(3));
LOAD_NIL(ARG(4));
COPY(ARG(2), ARG(5));
LOAD_FIXNUM(ARG(6), 0, ARG(6));
LOAD_NIL(ARG(7));
LOAD_NIL(ARG(8));
parse_namestring1(ARG(3));
mv_count = 1;
COPY(ARG(3), ARG(1));
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[130], ARG(1)); /* etypecase: the value ~a is not a legal value */
COPY(ARG(0), ARG(2));
Ferror(ARG(1), 2);
}
}
}
COPY(ARG(1), ARG(0));
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:55,代码来源:Fpathname.c
示例13: Z69_lambda
static void Z69_lambda(CL_FORM *base)
{
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(2));
COPY(INDIRECT(GET_FORM(ARG(0)) + 4), ARG(3));
Fle(ARG(2), 2);
if(CL_TRUEP(ARG(2)))
{
LOAD_SMSTR((CL_FORM *)&Kmake_string_input_stream1[0], ARG(2)); /* reached start of stream */
Ferror(ARG(2), 1);
}
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(2));
F1minus(ARG(2));
COPY(ARG(2), INDIRECT(GET_FORM(ARG(0)) + 5));
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(3));
Fstringp(ARG(3));
if(CL_TRUEP(ARG(3)))
{
}
else
{
COPY(SYMVAL(Slisp, 58), ARG(3)); /* WRONG_TYPE */
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(4));
LOAD_SYMBOL(SYMBOL(Slisp, 44), ARG(5)); /* STRING */
Ferror(ARG(3), 3);
}
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(3));
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(4));
Frow_major_aref(ARG(3));
if(EQL(ARG(1), ARG(3)))
{
}
else
{
LOAD_SMSTR((CL_FORM *)&Kmake_string_input_stream1[2], ARG(2)); /* %s should be eql to %s */
COPY(ARG(1), ARG(3));
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(4));
Fstringp(ARG(4));
if(CL_TRUEP(ARG(4)))
{
}
else
{
COPY(SYMVAL(Slisp, 58), ARG(4)); /* WRONG_TYPE */
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(5));
LOAD_SYMBOL(SYMBOL(Slisp, 44), ARG(6)); /* STRING */
Ferror(ARG(4), 3);
}
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(4));
COPY(INDIRECT(GET_FORM(ARG(0)) + 5), ARG(5));
Frow_major_aref(ARG(4));
Ferror(ARG(2), 3);
}
LOAD_NIL(ARG(0));
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:54,代码来源:lisp159.c
示例14: Fslot_boundp
void Fslot_boundp(CL_FORM *base)
{
if(CL_INSTANCEP(ARG(0)))
{
COPY(OFFSET(AR_BASE(GET_FORM(ARG(0))), -1 + 1), ARG(2));
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[238], ARG(2)); /* ~S ist not a valid argument for CLASS-OF, ~
these have been restricted to instances of user-defined-classes. */
COPY(ARG(0), ARG(3));
Ferror(ARG(2), 2);
}
COPY(OFFSET(AR_BASE(GET_FORM(ARG(2))), 3 + 1), ARG(2));
COPY(ARG(1), ARG(3));
COPY(ARG(2), ARG(4));
LOAD_SYMBOL(SYMBOL(Slisp, 209), ARG(5)); /* KEY */
LOAD_GLOBFUN(&CFthird, ARG(6));
Fposition(ARG(3), 4);
if(CL_TRUEP(ARG(3)))
{
COPY(OFFSET(AR_BASE(GET_FORM(ARG(0))), GET_FIXNUM(ARG(3)) + 1), ARG(4));
LOAD_BOOL(CL_UNBOUNDP(ARG(4)), ARG(4));
if(CL_TRUEP(ARG(4)))
{
LOAD_NIL(ARG(0));
}
else
{
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(0)); /* T */
}
}
else
{
if(CL_INSTANCEP(ARG(0)))
{
COPY(OFFSET(AR_BASE(GET_FORM(ARG(0))), -1 + 1), ARG(4));
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[238], ARG(4)); /* ~S ist not a valid argument for CLASS-OF, ~
these have been restricted to instances of user-defined-classes. */
COPY(ARG(0), ARG(5));
Ferror(ARG(4), 2);
}
LOAD_SMSTR((CL_FORM *)&KClisp[234], ARG(5)); /* ~S: The slot ~s is missing from the object ~s of class ~s. */
LOAD_SYMBOL(SYMBOL(Slisp, 201), ARG(6)); /* SLOT-BOUNDP */
COPY(ARG(1), ARG(7));
COPY(ARG(0), ARG(8));
COPY(ARG(4), ARG(9));
Ferror(ARG(5), 5);
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:53,代码来源:Fslot_boundp.c
示例15: Fposition
void Fposition(CL_FORM *base, int nargs)
{
CL_FORM *rest_0;
CL_FORM *local;
rest_0 = ARG(2);
local = ARG(nargs);
if(CL_TRUEP(ARG(1)))
{
if(CL_CONSP(ARG(1)))
{
LOAD_GLOBFUN(&Clist_position, LOCAL(0));
COPY(ARG(0), LOCAL(1));
COPY(ARG(1), LOCAL(2));
REST_APPLY(LOCAL(0), 3, rest_0);
COPY(LOCAL(0), ARG(0));
}
else
{
LOAD_BOOL(CL_SMVECP(ARG(1)), LOCAL(0));
if(CL_TRUEP(LOCAL(0)))
{
goto THEN1;
}
else
{
COPY(ARG(1), LOCAL(1));
LOAD_SYMBOL(SYMBOL(Slisp, 150), LOCAL(2)); /* COMPLEX-VECTOR */
rt_struct_typep(LOCAL(1));
}
if(CL_TRUEP(LOCAL(1)))
{
THEN1:;
LOAD_GLOBFUN(&Cvector_position, LOCAL(0));
COPY(ARG(0), LOCAL(1));
COPY(ARG(1), LOCAL(2));
REST_APPLY(LOCAL(0), 3, rest_0);
COPY(LOCAL(0), ARG(0));
}
else
{
COPY(SYMVAL(Slisp, 58), LOCAL(0)); /* WRONG_TYPE */
COPY(ARG(1), LOCAL(1));
LOAD_SYMBOL(SYMBOL(Slisp, 36), LOCAL(2)); /* SEQUENCE */
Ferror(LOCAL(0), 3);
}
}
}
else
{
LOAD_NIL(ARG(0));
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:52,代码来源:Fposition.c
示例16: maybe_diddle_case
void maybe_diddle_case(CL_FORM *base)
{
if(CL_TRUEP(ARG(1)))
{
LOAD_GLOBFUN(&CFupper_case_p, ARG(2));
COPY(ARG(0), ARG(3));
Z122_check_for(ARG(2));
LOAD_GLOBFUN(&CFlower_case_p, ARG(3));
COPY(ARG(0), ARG(4));
Z122_check_for(ARG(3));
if(CL_TRUEP(ARG(2)))
{
}
else
{
goto ELSE1;
}
if(CL_TRUEP(ARG(3)))
{
}
else
{
ELSE1:;
if(CL_TRUEP(ARG(2)))
{
LOAD_GLOBFUN(&CFstring_downcase, ARG(4));
COPY(ARG(0), ARG(5));
Z123_diddle_with(ARG(4));
COPY(ARG(4), ARG(0));
}
else
{
if(CL_TRUEP(ARG(3)))
{
LOAD_GLOBFUN(&CFstring_upcase, ARG(4));
COPY(ARG(0), ARG(5));
Z123_diddle_with(ARG(4));
COPY(ARG(4), ARG(0));
}
else
{
}
}
}
}
else
{
}
}
开发者ID:plops,项目名称:clicc,代码行数:49,代码来源:lisp355.c
示例17: token_push_extend
void token_push_extend(CL_FORM *base)
{
COPY(ARG(0), ARG(1));
COPY(SYMVAL(Slisp, 439), ARG(2)); /* *TOKEN* */
COPY(SYMVAL(Slisp, 440), ARG(3)); /* *FILL-POINTER* */
Fset_schar(ARG(1));
COPY(SYMVAL(Slisp, 440), ARG(1)); /* *FILL-POINTER* */
F1plus(ARG(1));
COPY(ARG(1), SYMVAL(Slisp, 440)); /* *FILL-POINTER* */
COPY(SYMVAL(Slisp, 441), ARG(2)); /* *TOKEN-LENGTH* */
Fge(ARG(1), 2);
if(CL_TRUEP(ARG(1)))
{
LOAD_SYMBOL(SYMBOL(Slisp, 44), ARG(1)); /* STRING */
COPY(SYMVAL(Slisp, 439), ARG(2)); /* *TOKEN* */
COPY(SYMVAL(Slisp, 442), ARG(3)); /* *TOKEN-EXTENSION* */
LOAD_CHAR(ARG(4), ' ', ARG(4));
make_string1(ARG(3));
Fconcatenate(ARG(1), 3);
COPY(ARG(1), SYMVAL(Slisp, 439)); /* *TOKEN* */
COPY(SYMVAL(Slisp, 441), ARG(1)); /* *TOKEN-LENGTH* */
COPY(SYMVAL(Slisp, 442), ARG(2)); /* *TOKEN-EXTENSION* */
Fplus(ARG(1), 2);
COPY(ARG(1), SYMVAL(Slisp, 441)); /* *TOKEN-LENGTH* */
COPY(SYMVAL(Slisp, 441), ARG(0)); /* *TOKEN-LENGTH* */
}
else
{
LOAD_NIL(ARG(0));
}
}
开发者ID:plops,项目名称:clicc,代码行数:31,代码来源:lisp507.c
示例18: print1
void print1(CL_FORM *base)
{
LOAD_SYMBOL(SYMBOL(Slisp, 48), ARG(2)); /* T */
BIND_SPECIAL(SYMBOL(Slisp, 474), ARG(2)); /* *PRINT-ESCAPE* */
if(CL_TRUEP(ARG(1)))
{
if(CL_SYMBOLP(ARG(1)) && GET_SYMBOL(ARG(1)) == SYMBOL(Slisp, 48)) /* T */
{
COPY(SYMVAL(Slisp, 59), ARG(1)); /* *TERMINAL-IO* */
}
}
else
{
COPY(SYMVAL(Slisp, 61), ARG(1)); /* *STANDARD-OUTPUT* */
}
COPY(ARG(1), ARG(3));
terpri1(ARG(3));
COPY(ARG(0), ARG(3));
COPY(ARG(1), ARG(4));
write2(ARG(3));
LOAD_CHAR(ARG(3), ' ', ARG(3));
COPY(ARG(1), ARG(4));
write_char1(ARG(3));
mv_count = 1;
RESTORE_SPECIAL;
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:26,代码来源:print1.c
示例19: FFI_lisp_character
void FFI_lisp_character(CL_FORM *base)
{
LOAD_BOOL(CL_C_CHAR_P(ARG(0)), ARG(1));
if(CL_TRUEP(ARG(1)))
{
goto THEN1;
}
else
{
}
if(CL_C_UNSIGNED_CHAR_P(ARG(0)))
{
THEN1:;
rt_make_lisp_character(ARG(0));
}
else
{
LOAD_SMSTR((CL_FORM *)&KClisp[240], ARG(1)); /* ~&Error in ~A: ~?~% */
LOAD_SMSTR((CL_FORM *)&KClisp[10], ARG(2)); /* LISP-CHARACTER */
LOAD_SMSTR((CL_FORM *)&KClisp[8], ARG(3)); /* The evaluated value ~S is not of type c-<char>. */
COPY(ARG(0), ARG(4));
Flist(ARG(4), 1);
Ferror(ARG(1), 4);
}
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:25,代码来源:lisp816.c
示例20: Z77_lambda
static void Z77_lambda(CL_FORM *base)
{
COPY(INDIRECT(GET_FORM(ARG(0)) + 3), ARG(2));
if(CL_SYMBOLP(ARG(2)))
{
COPY(SYM_VALUE(ARG(2)), ARG(2));
}
else
{
if(CL_TRUEP(ARG(2)))
{
COPY(SYMVAL(Slisp, 676), ARG(3)); /* SYM_EXPECTED */
COPY(ARG(2), ARG(4));
Ferror(ARG(3), 2);
}
else
{
LOAD_NIL(ARG(2));
}
}
stream_unreadc(ARG(2));
COPY(ARG(1), ARG(3));
Ffuncall(ARG(2), 2);
COPY(ARG(2), ARG(0));
}
开发者ID:hoelzl,项目名称:Clicc,代码行数:25,代码来源:lisp177.c
注:本文中的CL_TRUEP函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论