📄 seqfnint.c
字号:
/* nyqsrc/seqfnint.c -- interface to cmt/seqdecls.h, * nyqsrc/seqext.h, cmt/seq.h, nyqsrc/seqinterf.h, * cmt/seqread.h, cmt/seqmread.h, cmt/seqwrite.h, * cmt/seqmwrite.h */#ifndef mips#include "stdlib.h"#endif#include "xlisp.h"extern LVAL s_true;#define cvboolean(i) ((i) ? s_true : NIL)#define testarg2(e) (moreargs() ? (e) : (getflonum(xltoofew())))#define xlgaanynum() (floatp(*xlargv) ? getflonum(nextarg()) : \ (fixp(*xlargv) ? (double) getfixnum(nextarg()) : \ getflonum(xlbadtype(*xlargv))))#define getboolean(lval) ((lval) != NIL)extern LVAL RSLT_sym;#include "seqdecls.h"#include "seqext.h"#include "seq.h"/* xlc_seq_reset -- interface to C routine seq_reset *//**/LVAL xlc_seq_reset(void){ seq_type arg1 = getseq(xlgaseq()); xllastarg(); seq_reset(arg1); return NIL;}/* xlc_seq_insert_ctrl -- interface to C routine insert_ctrl *//**/LVAL xlc_seq_insert_ctrl(void){ seq_type arg1 = getseq(xlgaseq()); long arg2 = getfixnum(xlgafixnum()); long arg3 = getfixnum(xlgafixnum()); long arg4 = getfixnum(xlgafixnum()); long arg5 = getfixnum(xlgafixnum()); long arg6 = getfixnum(xlgafixnum()); xllastarg(); insert_ctrl(arg1, arg2, arg3, arg4, arg5, arg6); return NIL;}/* xlc_seq_insert_ramp -- interface to C routine insert_ctrlramp *//**/LVAL xlc_seq_insert_ramp(void){ seq_type arg1 = getseq(xlgaseq()); long arg2 = getfixnum(xlgafixnum()); long arg3 = getfixnum(xlgafixnum()); long arg4 = getfixnum(xlgafixnum()); long arg5 = getfixnum(xlgafixnum()); long arg6 = getfixnum(xlgafixnum()); long arg7 = getfixnum(xlgafixnum()); long arg8 = getfixnum(xlgafixnum()); long arg9 = getfixnum(xlgafixnum()); xllastarg(); insert_ctrlramp(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9); return NIL;}/* xlc_seq_insert_macctrl -- interface to C routine insert_macctrl *//**/LVAL xlc_seq_insert_macctrl(void){ seq_type arg1 = getseq(xlgaseq()); long arg2 = getfixnum(xlgafixnum()); long arg3 = getfixnum(xlgafixnum()); long arg4 = getfixnum(xlgafixnum()); long arg5 = getfixnum(xlgafixnum()); long arg6 = getfixnum(xlgafixnum()); xllastarg(); insert_macctrl(arg1, arg2, arg3, arg4, arg5, arg6); return NIL;}/* xlc_seq_insert_note -- interface to C routine insert_note *//**/LVAL xlc_seq_insert_note(void){ seq_type arg1 = getseq(xlgaseq()); long arg2 = getfixnum(xlgafixnum()); long arg3 = getfixnum(xlgafixnum()); long arg4 = getfixnum(xlgafixnum()); long arg5 = getfixnum(xlgafixnum()); long arg6 = getfixnum(xlgafixnum()); long arg7 = getfixnum(xlgafixnum()); xllastarg(); insert_note(arg1, arg2, arg3, arg4, arg5, arg6, arg7); return NIL;}/* xlc_seq_copy -- interface to C routine seq_copy *//**/LVAL xlc_seq_copy(void){ seq_type arg1 = getseq(xlgaseq()); seq_type result; xllastarg(); result = seq_copy(arg1); return cvseq(result);}/* xlc_seq_create -- interface to C routine seq_create *//**/LVAL xlc_seq_create(void){ seq_type result; xllastarg(); result = seq_create(); return cvseq(result);}#include "seqinterf.h"/* xlc_seq_next -- interface to C routine seq_next *//**/LVAL xlc_seq_next(void){ seq_type arg1 = getseq(xlgaseq()); boolean result; xllastarg(); result = seq_next(arg1); return cvboolean(result);}/* xlc_seq_get -- interface to C routine seq_get *//**/LVAL xlc_seq_get(void){ seq_type arg1 = getseq(xlgaseq()); long arg2 = 0; long arg3 = 0; long arg4 = 0; long arg5 = 0; long arg6 = 0; long arg7 = 0; long arg8 = 0; LVAL result; xllastarg(); seq_get(arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8); { LVAL *next = &getvalue(RSLT_sym); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg2); next = &cdr(*next); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg3); next = &cdr(*next); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg4); next = &cdr(*next); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg5); next = &cdr(*next); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg6); next = &cdr(*next); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg7); next = &cdr(*next); *next = cons(NIL, NIL); car(*next) = cvfixnum(arg8); } result = getvalue(RSLT_sym); return result;}#include "seqread.h"/* xlc_seq_read -- interface to C routine seq_read *//**/LVAL xlc_seq_read(void){ seq_type arg1 = getseq(xlgaseq()); FILE * arg2 = getfile(xlgastream()); xllastarg(); seq_read(arg1, arg2); return NIL;}#include "seqmread.h"/* xlc_seq_read_smf -- interface to C routine seq_read_smf *//**/LVAL xlc_seq_read_smf(void){ seq_type arg1 = getseq(xlgaseq()); FILE * arg2 = getfile(xlgastream()); xllastarg(); seq_read_smf(arg1, arg2); return NIL;}#include "seqwrite.h"/* xlc_seq_write -- interface to C routine seq_write *//**/LVAL xlc_seq_write(void){ seq_type arg1 = getseq(xlgaseq()); FILE * arg2 = getfile(xlgastream()); int arg3 = getboolean(xlgetarg()); xllastarg(); seq_write(arg1, arg2, arg3); return NIL;}#include "seqmwrite.h"/* xlc_seq_write_smf -- interface to C routine seq_write_smf *//**/LVAL xlc_seq_write_smf(void){ seq_type arg1 = getseq(xlgaseq()); FILE * arg2 = getfile(xlgastream()); xllastarg(); seq_write_smf(arg1, arg2); return NIL;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -