libs/alsa-lib-1.0.13/src/alisp/alisp.c File Reference

#include <assert.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <math.h>
#include <err.h>
#include "local.h"
#include "alisp.h"
#include "alisp_local.h"
#include "alisp_snd.c"

Include dependency graph for alisp.c:

Go to the source code of this file.

Data Structures

struct  intrinsic

Defines

#define alisp_seq_iterator   alisp_object

Functions

static struct alisp_object * parse_object (struct alisp_instance *instance, int havetoken)
static void princ_cons (snd_output_t *out, struct alisp_object *p)
static void princ_object (snd_output_t *out, struct alisp_object *p)
static struct alisp_object * eval (struct alisp_instance *instance, struct alisp_object *p)
static struct alisp_object * F_eval (struct alisp_instance *instance, struct alisp_object *)
static struct alisp_object * F_progn (struct alisp_instance *instance, struct alisp_object *)
static struct alisp_object * F_funcall (struct alisp_instance *instance, struct alisp_object *)
static int alisp_include_file (struct alisp_instance *instance, const char *filename)
static int get_string_hash (const char *s)
static void nomem (void)
static void lisp_verbose (struct alisp_instance *instance, const char *fmt,...)
static void lisp_error (struct alisp_instance *instance, const char *fmt,...)
static void lisp_warn (struct alisp_instance *instance, const char *fmt,...)
static void lisp_debug (struct alisp_instance *instance, const char *fmt,...)
static struct alisp_object * new_object (struct alisp_instance *instance, int type)
static void free_object (struct alisp_object *p)
static void delete_object (struct alisp_instance *instance, struct alisp_object *p)
static void delete_tree (struct alisp_instance *instance, struct alisp_object *p)
static struct alisp_object * incref_object (struct alisp_instance *instance ATTRIBUTE_UNUSED, struct alisp_object *p)
static struct alisp_object * incref_tree (struct alisp_instance *instance, struct alisp_object *p)
static struct alisp_object * incref_tree_explicit (struct alisp_instance *instance, struct alisp_object *p, struct alisp_object *e)
static void free_objects (struct alisp_instance *instance)
static struct alisp_object * search_object_identifier (struct alisp_instance *instance, const char *s)
static struct alisp_object * search_object_string (struct alisp_instance *instance, const char *s)
static struct alisp_object * search_object_integer (struct alisp_instance *instance, long in)
static struct alisp_object * search_object_float (struct alisp_instance *instance, double in)
static struct alisp_object * search_object_pointer (struct alisp_instance *instance, const void *ptr)
static struct alisp_object * new_integer (struct alisp_instance *instance, long value)
static struct alisp_object * new_float (struct alisp_instance *instance, double value)
static struct alisp_object * new_string (struct alisp_instance *instance, const char *str)
static struct alisp_object * new_identifier (struct alisp_instance *instance, const char *id)
static struct alisp_object * new_pointer (struct alisp_instance *instance, const void *ptr)
static struct alisp_object * new_cons_pointer (struct alisp_instance *instance, const char *ptr_id, void *ptr)
void alsa_lisp_init_objects (void)
static int xgetc (struct alisp_instance *instance)
static void xungetc (struct alisp_instance *instance, int c)
static int init_lex (struct alisp_instance *instance)
static void done_lex (struct alisp_instance *instance)
static char * extend_buf (struct alisp_instance *instance, char *p)
static int gettoken (struct alisp_instance *instance)
static struct alisp_object * parse_form (struct alisp_instance *instance)
static struct alisp_object * quote_object (struct alisp_instance *instance, struct alisp_object *obj)
static struct alisp_object * parse_quote (struct alisp_instance *instance)
static struct alisp_object_pair * set_object_direct (struct alisp_instance *instance, struct alisp_object *name, struct alisp_object *value)
static int check_set_object (struct alisp_instance *instance, struct alisp_object *name)
static struct alisp_object_pair * set_object (struct alisp_instance *instance, struct alisp_object *name, struct alisp_object *value)
static struct alisp_object * unset_object (struct alisp_instance *instance, struct alisp_object *name)
static struct alisp_object * get_object1 (struct alisp_instance *instance, const char *id)
static struct alisp_object * get_object (struct alisp_instance *instance, struct alisp_object *name)
static struct alisp_object * replace_object (struct alisp_instance *instance, struct alisp_object *name, struct alisp_object *onew)
static void dump_objects (struct alisp_instance *instance, const char *fname)
static const char * obj_type_str (struct alisp_object *p)
static void print_obj_lists (struct alisp_instance *instance, snd_output_t *out)
static void dump_obj_lists (struct alisp_instance *instance, const char *fname)
static int count_list (struct alisp_object *p)
static struct alisp_object * car (struct alisp_object *p)
static struct alisp_object * cdr (struct alisp_object *p)
static struct alisp_object * F_car (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_cdr (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_add (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_concat (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_sub (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_mul (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_div (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_mod (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_lt (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_gt (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_le (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_ge (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_numeq (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_numneq (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_exfun (struct alisp_instance *instance, struct alisp_object *args)
static void princ_string (snd_output_t *out, char *s)
static struct alisp_object * F_princ (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_atom (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_cons (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_list (struct alisp_instance *instance, struct alisp_object *args)
static int eq (struct alisp_object *p1, struct alisp_object *p2)
static int equal (struct alisp_object *p1, struct alisp_object *p2)
static struct alisp_object * F_eq (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_equal (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_quote (struct alisp_instance *instance ATTRIBUTE_UNUSED, struct alisp_object *args)
static struct alisp_object * F_and (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_or (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_not (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_cond (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_if (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_when (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_unless (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_while (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_prog1 (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_prog2 (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_set (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_unset (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_setq (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_unsetq (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_defun (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * eval_func (struct alisp_instance *instance, struct alisp_object *p, struct alisp_object *args)
alisp_object * F_gc (struct alisp_instance *instance ATTRIBUTE_UNUSED, struct alisp_object *args ATTRIBUTE_UNUSED)
alisp_object * F_path (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_include (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_string_to_integer (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_string_to_float (struct alisp_instance *instance, struct alisp_object *args)
static int append_to_string (char **s, int *len, char *from, int size)
static int format_parse_char (struct alisp_instance *instance, char **s, int *len, struct alisp_object *p)
static int format_parse_integer (struct alisp_instance *instance, char **s, int *len, struct alisp_object *p)
static int format_parse_float (struct alisp_instance *instance, char **s, int *len, struct alisp_object *p)
static int format_parse_string (struct alisp_instance *instance, char **s, int *len, struct alisp_object *p)
alisp_object * F_format (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_compare_strings (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_assoc (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_rassoc (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_assq (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_nth (struct alisp_instance *instance, struct alisp_object *args)
alisp_object * F_rassq (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_dump_memory (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_stat_memory (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_check_memory (struct alisp_instance *instance, struct alisp_object *args)
static struct alisp_object * F_dump_objects (struct alisp_instance *instance, struct alisp_object *args)
static int compar (const void *p1, const void *p2)
static struct alisp_object * eval_cons1 (struct alisp_instance *instance, struct alisp_object *p1, struct alisp_object *p2)
static struct alisp_object * eval_cons (struct alisp_instance *instance, struct alisp_object *p)
int alsa_lisp (struct alisp_cfg *cfg, struct alisp_instance **_instance)
void alsa_lisp_free (struct alisp_instance *instance)
alisp_cfg * alsa_lisp_default_cfg (snd_input_t *input)
void alsa_lisp_default_cfg_free (struct alisp_cfg *cfg)
int alsa_lisp_function (struct alisp_instance *instance, struct alisp_seq_iterator **result, const char *id, const char *args,...)
void alsa_lisp_result_free (struct alisp_instance *instance, struct alisp_seq_iterator *result)
int alsa_lisp_seq_first (struct alisp_instance *instance, const char *id, struct alisp_seq_iterator **seq)
int alsa_lisp_seq_next (struct alisp_seq_iterator **seq)
int alsa_lisp_seq_count (struct alisp_seq_iterator *seq)
int alsa_lisp_seq_integer (struct alisp_seq_iterator *seq, long *val)
int alsa_lisp_seq_pointer (struct alisp_seq_iterator *seq, const char *ptr_id, void **ptr)

Variables

alisp_object alsa_lisp_nil
alisp_object alsa_lisp_t
static struct intrinsic intrinsics []


Define Documentation

#define alisp_seq_iterator   alisp_object

Definition at line 34 of file alisp.c.


Function Documentation

static int alisp_include_file ( struct alisp_instance *  instance,
const char *  filename 
) [static]

Definition at line 3144 of file alisp.c.

References delete_tree(), eval(), lisp_debug(), lisp_verbose(), name, parse_object(), princ_object(), and print_obj_lists().

Referenced by F_include().

int alsa_lisp ( struct alisp_cfg *  cfg,
struct alisp_instance **  _instance 
)

Definition at line 3195 of file alisp.c.

References delete_tree(), eval(), init_lex(), lisp_debug(), lisp_verbose(), malloc(), memset(), nomem(), parse_object(), princ_object(), and print_obj_lists().

struct alisp_cfg* alsa_lisp_default_cfg ( snd_input_t *  input  ) 

Definition at line 3267 of file alisp.c.

References stderr, and stdout.

void alsa_lisp_default_cfg_free ( struct alisp_cfg *  cfg  ) 

Definition at line 3295 of file alisp.c.

References free().

void alsa_lisp_free ( struct alisp_instance *  instance  ) 

Definition at line 3258 of file alisp.c.

References done_lex(), free(), and free_objects().

int alsa_lisp_function ( struct alisp_instance *  instance,
struct alisp_seq_iterator **  result,
const char *  id,
const char *  args,
  ... 
)

Definition at line 3303 of file alisp.c.

References alsa_lisp_nil, compar(), delete_tree(), eval_func(), intrinsic::func, get_object1(), intrinsics, intrinsic::name, new_cons_pointer(), new_integer(), new_object(), new_string(), princ_object(), and quote_object().

void alsa_lisp_init_objects ( void   ) 

Definition at line 480 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, and memset().

void alsa_lisp_result_free ( struct alisp_instance *  instance,
struct alisp_seq_iterator *  result 
)

Definition at line 3420 of file alisp.c.

References delete_tree().

int alsa_lisp_seq_count ( struct alisp_seq_iterator *  seq  ) 

Definition at line 3449 of file alisp.c.

References alsa_lisp_nil, and cdr().

int alsa_lisp_seq_first ( struct alisp_instance *  instance,
const char *  id,
struct alisp_seq_iterator **  seq 
)

Definition at line 3426 of file alisp.c.

References get_object1().

int alsa_lisp_seq_integer ( struct alisp_seq_iterator *  seq,
long *  val 
)

Definition at line 3460 of file alisp.c.

int alsa_lisp_seq_next ( struct alisp_seq_iterator **  seq  ) 

Definition at line 3438 of file alisp.c.

References alsa_lisp_nil, and cdr().

int alsa_lisp_seq_pointer ( struct alisp_seq_iterator *  seq,
const char *  ptr_id,
void **  ptr 
)

Definition at line 3471 of file alisp.c.

static int append_to_string ( char **  s,
int *  len,
char *  from,
int  size 
) [static]

Definition at line 2468 of file alisp.c.

References malloc(), memcpy(), and nomem().

Referenced by F_format(), format_parse_char(), format_parse_float(), format_parse_integer(), and format_parse_string().

static struct alisp_object* car ( struct alisp_object *  p  )  [inline, static]

Definition at line 1086 of file alisp.c.

References alsa_lisp_nil.

Referenced by eval_cons(), eval_func(), F_add(), F_and(), F_assoc(), F_assq(), F_atom(), F_car(), F_cdr(), F_compare_strings(), F_concat(), F_cond(), F_cons(), F_defun(), F_div(), F_dump_memory(), F_dump_objects(), F_eq(), F_equal(), F_eval(), F_exfun(), F_format(), F_funcall(), F_ge(), F_gt(), F_if(), F_include(), F_le(), F_list(), F_lt(), F_mod(), F_mul(), F_not(), F_nth(), F_numeq(), F_or(), F_path(), F_princ(), F_prog1(), F_prog2(), F_progn(), F_quote(), F_rassoc(), F_rassq(), F_set(), F_setq(), F_string_to_float(), F_string_to_integer(), F_sub(), F_unless(), F_unset(), F_unsetq(), F_when(), and F_while().

static struct alisp_object* cdr ( struct alisp_object *  p  )  [inline, static]

Definition at line 1094 of file alisp.c.

References alsa_lisp_nil.

Referenced by alsa_lisp_seq_count(), alsa_lisp_seq_next(), eval_cons(), eval_func(), F_add(), F_and(), F_assoc(), F_assq(), F_atom(), F_car(), F_cdr(), F_compare_strings(), F_concat(), F_cond(), F_cons(), F_defun(), F_div(), F_dump_memory(), F_dump_objects(), F_eq(), F_equal(), F_exfun(), F_format(), F_funcall(), F_ge(), F_gt(), F_if(), F_include(), F_le(), F_list(), F_lt(), F_mod(), F_mul(), F_not(), F_nth(), F_numeq(), F_or(), F_path(), F_princ(), F_prog1(), F_prog2(), F_progn(), F_quote(), F_rassoc(), F_rassq(), F_set(), F_setq(), F_string_to_float(), F_string_to_integer(), F_sub(), F_unless(), F_unset(), F_unsetq(), F_when(), and F_while().

static int check_set_object ( struct alisp_instance *  instance,
struct alisp_object *  name 
) [static]

Definition at line 845 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, and lisp_warn().

Referenced by F_set(), and F_setq().

static int compar ( const void *  p1,
const void *  p2 
) [static]

Definition at line 3036 of file alisp.c.

References name.

Referenced by alsa_lisp_function(), and eval_cons1().

static int count_list ( struct alisp_object *  p  )  [static]

Definition at line 1074 of file alisp.c.

References alsa_lisp_nil.

Referenced by eval_func().

static void delete_object ( struct alisp_instance *  instance,
struct alisp_object *  p 
) [static]

Definition at line 175 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, free(), free_object(), and lisp_debug().

Referenced by delete_tree(), eval(), eval_cons(), eval_cons1(), eval_func(), F_add(), F_and(), F_assoc(), F_assq(), F_atom(), F_car(), F_cdr(), F_compare_strings(), F_concat(), F_cond(), F_cons(), F_defun(), F_div(), F_eq(), F_equal(), F_exfun(), F_format(), F_funcall(), F_ge(), F_gt(), F_if(), F_include(), F_le(), F_list(), F_lt(), F_mod(), F_mul(), F_not(), F_nth(), F_numeq(), F_or(), F_path(), F_princ(), F_prog1(), F_prog2(), F_progn(), F_quote(), F_rassoc(), F_rassq(), F_set(), F_setq(), F_string_to_float(), F_string_to_integer(), F_sub(), F_unless(), F_unset(), F_unsetq(), F_when(), F_while(), new_cons_pointer(), new_identifier(), new_string(), and quote_object().

static void delete_tree ( struct alisp_instance *  instance,
struct alisp_object *  p 
) [static]

Definition at line 201 of file alisp.c.

References delete_object().

Referenced by alisp_include_file(), alsa_lisp(), alsa_lisp_function(), alsa_lisp_result_free(), eval_cons(), eval_cons1(), eval_func(), F_add(), F_and(), F_assoc(), F_assq(), F_atom(), F_car(), F_cdr(), F_check_memory(), F_compare_strings(), F_concat(), F_cond(), F_cons(), F_defun(), F_div(), F_dump_memory(), F_dump_objects(), F_eq(), F_equal(), F_exfun(), F_format(), F_funcall(), F_ge(), F_gt(), F_if(), F_include(), F_le(), F_list(), F_lt(), F_mod(), F_mul(), F_not(), F_nth(), F_numeq(), F_or(), F_path(), F_princ(), F_prog1(), F_prog2(), F_progn(), F_quote(), F_rassoc(), F_rassq(), F_set(), F_setq(), F_stat_memory(), F_string_to_float(), F_string_to_integer(), F_sub(), F_unless(), F_unset(), F_unsetq(), F_when(), F_while(), free_objects(), get_object(), parse_form(), quote_object(), replace_object(), set_object(), and set_object_direct().

static void done_lex ( struct alisp_instance *  instance  )  [static]

Definition at line 522 of file alisp.c.

References free().

Referenced by alsa_lisp_free().

static void dump_obj_lists ( struct alisp_instance *  instance,
const char *  fname 
) [static]

Definition at line 1051 of file alisp.c.

References print_obj_lists(), and stdout.

Referenced by F_dump_objects().

static void dump_objects ( struct alisp_instance *  instance,
const char *  fname 
) [static]

Definition at line 976 of file alisp.c.

References princ_cons(), princ_object(), and stdout.

Referenced by F_dump_memory().

static int eq ( struct alisp_object *  p1,
struct alisp_object *  p2 
) [inline, static]

Definition at line 1810 of file alisp.c.

Referenced by equal(), F_assoc(), F_eq(), and F_rassoc().

static int equal ( struct alisp_object *  p1,
struct alisp_object *  p2 
) [static]

Definition at line 1815 of file alisp.c.

References eq().

Referenced by F_assq(), F_equal(), F_rassq(), and write_coil_form().

static struct alisp_object * eval ( struct alisp_instance *  instance,
struct alisp_object *  p 
) [static]

Definition at line 3113 of file alisp.c.

References delete_object(), eval_cons(), get_object(), and incref_tree().

Referenced by _snd_config_evaluate(), alisp_include_file(), alsa_lisp(), eval_func(), F_add(), F_and(), F_assoc(), F_assq(), F_atom(), F_car(), F_cdr(), F_compare_strings(), F_concat(), F_cond(), F_cons(), F_div(), F_eq(), F_equal(), F_eval(), F_exfun(), F_format(), F_funcall(), F_ge(), F_gt(), F_if(), F_include(), F_le(), F_list(), F_lt(), F_mod(), F_mul(), F_not(), F_nth(), F_numeq(), F_or(), F_path(), F_princ(), F_prog1(), F_prog2(), F_progn(), F_rassoc(), F_rassq(), F_set(), F_setq(), F_string_to_float(), F_string_to_integer(), F_sub(), F_unless(), F_unset(), F_when(), and F_while().

static struct alisp_object* eval_cons ( struct alisp_instance *  instance,
struct alisp_object *  p 
) [inline, static]

Definition at line 3095 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), and eval_cons1().

Referenced by eval().

static struct alisp_object* eval_cons1 ( struct alisp_instance *  instance,
struct alisp_object *  p1,
struct alisp_object *  p2 
) [inline, static]

Definition at line 3042 of file alisp.c.

References alsa_lisp_nil, compar(), delete_object(), delete_tree(), eval_func(), intrinsic::func, get_object(), intrinsics, lisp_warn(), and intrinsic::name.

Referenced by eval_cons(), and F_funcall().

static struct alisp_object* eval_func ( struct alisp_instance *  instance,
struct alisp_object *  p,
struct alisp_object *  args 
) [static]

Definition at line 2292 of file alisp.c.

References _end, alsa_lisp_nil, car(), cdr(), count_list(), delete_object(), delete_tree(), eval(), F_progn(), free(), incref_tree(), lisp_warn(), malloc(), nomem(), replace_object(), set_object_direct(), and unset_object().

Referenced by alsa_lisp_function(), and eval_cons1().

static char* extend_buf ( struct alisp_instance *  instance,
char *  p 
) [static]

Definition at line 527 of file alisp.c.

References nomem().

Referenced by gettoken().

static struct alisp_object* F_add ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1135 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), f, lisp_warn(), n, new_float(), new_integer(), and type.

static struct alisp_object* F_and ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1903 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and n.

struct alisp_object* F_assoc ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2746 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eq(), eval(), and n.

struct alisp_object* F_assq ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2806 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), equal(), eval(), and n.

static struct alisp_object* F_atom ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1725 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), and eval().

static struct alisp_object* F_car ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1105 of file alisp.c.

References car(), cdr(), delete_object(), delete_tree(), and eval().

static struct alisp_object* F_cdr ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1120 of file alisp.c.

References car(), cdr(), delete_object(), delete_tree(), and eval().

static struct alisp_object* F_check_memory ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2933 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, delete_tree(), exit, F_stat_memory(), and stderr.

struct alisp_object* F_compare_strings ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2656 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), lisp_warn(), n, s1, s2, and value.

static struct alisp_object* F_concat ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1173 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), free(), lisp_warn(), n, new_string(), and nomem().

static struct alisp_object* F_cond ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1969 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and F_progn().

static struct alisp_object* F_cons ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1756 of file alisp.c.

References car(), cdr(), delete_object(), delete_tree(), eval(), and new_object().

static struct alisp_object* F_defun ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2255 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), new_identifier(), new_object(), and set_object().

static struct alisp_object* F_div ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1296 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), f, lisp_warn(), n, new_float(), new_integer(), and type.

static struct alisp_object* F_dump_memory ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2900 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_tree(), dump_objects(), and lisp_warn().

static struct alisp_object* F_dump_objects ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2944 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_tree(), dump_obj_lists(), and lisp_warn().

static struct alisp_object* F_eq ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1845 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eq(), and eval().

static struct alisp_object* F_equal ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1868 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), equal(), and eval().

static struct alisp_object * F_eval ( struct alisp_instance *  instance,
struct alisp_object *   
) [static]

Definition at line 3135 of file alisp.c.

References car(), and eval().

static struct alisp_object* F_exfun ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1611 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), and get_object().

struct alisp_object* F_format ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2557 of file alisp.c.

References alsa_lisp_nil, append_to_string(), car(), cdr(), delete_object(), delete_tree(), eval(), format_parse_char(), format_parse_float(), format_parse_integer(), format_parse_string(), free(), lisp_warn(), n, new_string(), s, s1, and s2.

static struct alisp_object * F_funcall ( struct alisp_instance *  instance,
struct alisp_object *   
) [static]

Definition at line 3078 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), eval_cons1(), and lisp_warn().

struct alisp_object* F_gc ( struct alisp_instance *instance  ATTRIBUTE_UNUSED,
struct alisp_object *args  ATTRIBUTE_UNUSED 
)

Definition at line 2375 of file alisp.c.

References alsa_lisp_t.

static struct alisp_object* F_ge ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1519 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), and lisp_warn().

static struct alisp_object* F_gt ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1441 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), and lisp_warn().

static struct alisp_object* F_if ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2002 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and F_progn().

struct alisp_object* F_include ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2407 of file alisp.c.

References alisp_include_file(), alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and new_integer().

static struct alisp_object* F_le ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1480 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), and lisp_warn().

static struct alisp_object* F_list ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1777 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and new_object().

static struct alisp_object* F_lt ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1402 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), and lisp_warn().

static struct alisp_object* F_mod ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1355 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), lisp_warn(), new_float(), and new_integer().

static struct alisp_object* F_mul ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1260 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), f, lisp_warn(), n, new_float(), new_integer(), and type.

static struct alisp_object* F_not ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1951 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), and eval().

struct alisp_object* F_nth ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2836 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and n.

static struct alisp_object* F_numeq ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1558 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, car(), cdr(), delete_object(), delete_tree(), eval(), and lisp_warn().

Referenced by F_numneq().

static struct alisp_object* F_numneq ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1597 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, and F_numeq().

static struct alisp_object* F_or ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1927 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and n.

struct alisp_object* F_path ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2385 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and new_string().

static struct alisp_object* F_princ ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1702 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), n, and princ_object().

static struct alisp_object* F_prog1 ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2112 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), and eval().

static struct alisp_object* F_prog2 ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2136 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), and eval().

static struct alisp_object * F_progn ( struct alisp_instance *  instance,
struct alisp_object *   
) [static]

Definition at line 2093 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and n.

Referenced by eval_func(), F_cond(), F_if(), F_unless(), F_when(), and F_while().

static struct alisp_object* F_quote ( struct alisp_instance *instance  ATTRIBUTE_UNUSED,
struct alisp_object *  args 
) [static]

Definition at line 1891 of file alisp.c.

References car(), cdr(), delete_object(), and delete_tree().

struct alisp_object* F_rassoc ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2776 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eq(), eval(), and n.

struct alisp_object* F_rassq ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2873 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), equal(), eval(), and n.

static struct alisp_object* F_set ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2162 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), check_set_object(), delete_object(), delete_tree(), eval(), incref_tree(), and set_object().

static struct alisp_object* F_setq ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2202 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), check_set_object(), delete_object(), delete_tree(), eval(), incref_tree(), n, and set_object().

static struct alisp_object* F_stat_memory ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2919 of file alisp.c.

References alsa_lisp_nil, and delete_tree().

Referenced by F_check_memory().

struct alisp_object* F_string_to_float ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2450 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), lisp_warn(), and new_float().

struct alisp_object* F_string_to_integer ( struct alisp_instance *  instance,
struct alisp_object *  args 
)

Definition at line 2428 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), lisp_warn(), and new_integer().

static struct alisp_object* F_sub ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 1214 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), f, lisp_warn(), n, new_float(), new_integer(), and type.

static struct alisp_object* F_unless ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2048 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and F_progn().

static struct alisp_object* F_unset ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2187 of file alisp.c.

References car(), cdr(), delete_object(), delete_tree(), eval(), and unset_object().

static struct alisp_object* F_unsetq ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2234 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), n, and unset_object().

static struct alisp_object* F_when ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2027 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), and F_progn().

static struct alisp_object* F_while ( struct alisp_instance *  instance,
struct alisp_object *  args 
) [static]

Definition at line 2068 of file alisp.c.

References alsa_lisp_nil, car(), cdr(), delete_object(), delete_tree(), eval(), F_progn(), and incref_tree().

static int format_parse_char ( struct alisp_instance *  instance,
char **  s,
int *  len,
struct alisp_object *  p 
) [static]

Definition at line 2490 of file alisp.c.

References append_to_string(), and lisp_warn().

Referenced by F_format().

static int format_parse_float ( struct alisp_instance *  instance,
char **  s,
int *  len,
struct alisp_object *  p 
) [static]

Definition at line 2523 of file alisp.c.

References append_to_string(), free(), lisp_warn(), malloc(), nomem(), and s1.

Referenced by F_format().

static int format_parse_integer ( struct alisp_instance *  instance,
char **  s,
int *  len,
struct alisp_object *  p 
) [static]

Definition at line 2502 of file alisp.c.

References append_to_string(), free(), lisp_warn(), malloc(), nomem(), and s1.

Referenced by F_format().

static int format_parse_string ( struct alisp_instance *  instance,
char **  s,
int *  len,
struct alisp_object *  p 
) [static]

Definition at line 2544 of file alisp.c.

References append_to_string(), and lisp_warn().

Referenced by F_format().

static void free_object ( struct alisp_object *  p  )  [static]

Definition at line 162 of file alisp.c.

References free().

Referenced by delete_object().

static void free_objects ( struct alisp_instance *  instance  )  [static]

Definition at line 254 of file alisp.c.

References delete_tree(), free(), and lisp_debug().

Referenced by alsa_lisp_free().

static struct alisp_object* get_object ( struct alisp_instance *  instance,
struct alisp_object *  name 
) [static]

Definition at line 941 of file alisp.c.

References alsa_lisp_nil, delete_tree(), and get_object1().

Referenced by eval(), eval_cons1(), and F_exfun().

static struct alisp_object* get_object1 ( struct alisp_instance *  instance,
const char *  id 
) [static]

Definition at line 927 of file alisp.c.

References alsa_lisp_nil, and get_string_hash().

Referenced by alsa_lisp_function(), alsa_lisp_seq_first(), and get_object().

static int get_string_hash ( const char *  s  )  [static]

Definition at line 61 of file alisp.c.

Referenced by get_object1(), new_identifier(), new_string(), replace_object(), search_object_identifier(), search_object_string(), set_object(), set_object_direct(), and unset_object().

static int gettoken ( struct alisp_instance *  instance  )  [static]

Definition at line 541 of file alisp.c.

References extend_buf(), xgetc(), and xungetc().

Referenced by parse_form(), and parse_object().

static struct alisp_object* incref_object ( struct alisp_instance *instance  ATTRIBUTE_UNUSED,
struct alisp_object *  p 
) [static]

Definition at line 212 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, exit, and stderr.

Referenced by incref_tree(), incref_tree_explicit(), search_object_float(), search_object_identifier(), search_object_integer(), search_object_pointer(), and search_object_string().

static struct alisp_object* incref_tree ( struct alisp_instance *  instance,
struct alisp_object *  p 
) [static]

Definition at line 225 of file alisp.c.

References incref_object().

Referenced by eval(), eval_func(), F_set(), F_setq(), F_while(), and incref_tree_explicit().

static struct alisp_object* incref_tree_explicit ( struct alisp_instance *  instance,
struct alisp_object *  p,
struct alisp_object *  e 
) [static]

Definition at line 236 of file alisp.c.

References incref_object(), and incref_tree().

static int init_lex ( struct alisp_instance *  instance  )  [static]

Definition at line 510 of file alisp.c.

References malloc(), and nomem().

Referenced by alsa_lisp().

static void lisp_debug ( struct alisp_instance *  instance,
const char *  fmt,
  ... 
) [static]

Definition at line 115 of file alisp.c.

Referenced by alisp_include_file(), alsa_lisp(), delete_object(), free_objects(), and new_object().

static void lisp_error ( struct alisp_instance *  instance,
const char *  fmt,
  ... 
) [static]

Definition at line 89 of file alisp.c.

Referenced by parse_form().

static void lisp_verbose ( struct alisp_instance *  instance,
const char *  fmt,
  ... 
) [static]

Definition at line 76 of file alisp.c.

Referenced by alisp_include_file(), and alsa_lisp().

static void lisp_warn ( struct alisp_instance *  instance,
const char *  fmt,
  ... 
) [static]

Definition at line 102 of file alisp.c.

Referenced by check_set_object(), eval_cons1(), eval_func(), F_add(), F_compare_strings(), F_concat(), F_div(), F_dump_memory(), F_dump_objects(), F_format(), F_funcall(), F_ge(), F_gt(), F_le(), F_lt(), F_mod(), F_mul(), F_numeq(), F_string_to_float(), F_string_to_integer(), F_sub(), format_parse_char(), format_parse_float(), format_parse_integer(), format_parse_string(), parse_object(), and unset_object().

static struct alisp_object* new_cons_pointer ( struct alisp_instance *  instance,
const char *  ptr_id,
void *  ptr 
) [static]

Definition at line 458 of file alisp.c.

References alsa_lisp_nil, delete_object(), new_object(), new_pointer(), and new_string().

Referenced by alsa_lisp_function().

static struct alisp_object* new_float ( struct alisp_instance *  instance,
double  value 
) [static]

Definition at line 392 of file alisp.c.

References new_object(), and search_object_float().

Referenced by F_add(), F_div(), F_mod(), F_mul(), F_string_to_float(), F_sub(), and parse_object().

static struct alisp_object* new_identifier ( struct alisp_instance *  instance,
const char *  id 
) [static]

Definition at line 425 of file alisp.c.

References delete_object(), get_string_hash(), new_object(), nomem(), and search_object_identifier().

Referenced by F_defun(), parse_object(), and quote_object().

static struct alisp_object* new_integer ( struct alisp_instance *  instance,
long  value 
) [static]

Definition at line 377 of file alisp.c.

References new_object(), and search_object_integer().

Referenced by alsa_lisp_function(), F_add(), F_div(), F_include(), F_mod(), F_mul(), F_string_to_integer(), F_sub(), and parse_object().

static struct alisp_object* new_object ( struct alisp_instance *  instance,
int  type 
) [static]

Definition at line 128 of file alisp.c.

References alsa_lisp_nil, lisp_debug(), malloc(), and nomem().

Referenced by alsa_lisp_function(), F_cons(), F_defun(), F_list(), new_cons_pointer(), new_float(), new_identifier(), new_integer(), new_pointer(), new_string(), parse_form(), and quote_object().

static struct alisp_object* new_pointer ( struct alisp_instance *  instance,
const void *  ptr 
) [static]

Definition at line 443 of file alisp.c.

References new_object(), and search_object_pointer().

Referenced by new_cons_pointer().

static struct alisp_object* new_string ( struct alisp_instance *  instance,
const char *  str 
) [static]

Definition at line 407 of file alisp.c.

References delete_object(), get_string_hash(), new_object(), nomem(), and search_object_string().

Referenced by alsa_lisp_function(), F_concat(), F_format(), F_path(), new_cons_pointer(), parse_object(), and snd_config_set_string().

static void nomem ( void   )  [static]

Definition at line 71 of file alisp.c.

Referenced by alsa_lisp(), append_to_string(), eval_func(), extend_buf(), F_concat(), format_parse_float(), format_parse_integer(), init_lex(), new_identifier(), new_object(), new_string(), set_object(), and set_object_direct().

static const char* obj_type_str ( struct alisp_object *  p  )  [static]

Definition at line 1011 of file alisp.c.

Referenced by print_obj_lists().

static struct alisp_object* parse_form ( struct alisp_instance *  instance  )  [static]

Definition at line 689 of file alisp.c.

References alsa_lisp_nil, delete_tree(), gettoken(), lisp_error(), new_object(), and parse_object().

Referenced by parse_object().

static struct alisp_object * parse_object ( struct alisp_instance *  instance,
int  havetoken 
) [static]

Definition at line 771 of file alisp.c.

References alsa_lisp_nil, alsa_lisp_t, gettoken(), lisp_warn(), new_float(), new_identifier(), new_integer(), new_string(), parse_form(), and parse_quote().

Referenced by alisp_include_file(), alsa_lisp(), parse_form(), and parse_quote().

static struct alisp_object* parse_quote ( struct alisp_instance *  instance  )  [inline, static]

Definition at line 766 of file alisp.c.

References parse_object(), and quote_object().

Referenced by parse_object().

static void princ_cons ( snd_output_t *  out,
struct alisp_object *  p 
) [static]

Definition at line 1653 of file alisp.c.

References alsa_lisp_nil, and princ_object().

Referenced by dump_objects(), and princ_object().

static void princ_object ( snd_output_t *  out,
struct alisp_object *  p 
) [static]

Definition at line 1668 of file alisp.c.

References princ_cons(), and princ_string().

Referenced by alisp_include_file(), alsa_lisp(), alsa_lisp_function(), dump_objects(), F_princ(), princ_cons(), and print_obj_lists().

static void princ_string ( snd_output_t *  out,
char *  s 
) [static]

Definition at line 1633 of file alisp.c.

Referenced by princ_object().

static void print_obj_lists ( struct alisp_instance *  instance,
snd_output_t *  out 
) [static]

Definition at line 1026 of file alisp.c.

References obj_type_str(), and princ_object().

Referenced by alisp_include_file(), alsa_lisp(), and dump_obj_lists().

static struct alisp_object* quote_object ( struct alisp_instance *  instance,
struct alisp_object *  obj 
) [static]

Definition at line 738 of file alisp.c.

References delete_object(), delete_tree(), new_identifier(), and new_object().

Referenced by alsa_lisp_function(), and parse_quote().

static struct alisp_object* replace_object ( struct alisp_instance *  instance,
struct alisp_object *  name,
struct alisp_object *  onew 
) [static]

Definition at line 951 of file alisp.c.

References alsa_lisp_nil, delete_tree(), get_string_hash(), and id.

Referenced by eval_func().

static struct alisp_object* search_object_float ( struct alisp_instance *  instance,
double  in 
) [static]

Definition at line 343 of file alisp.c.

References incref_object().

Referenced by new_float().

static struct alisp_object* search_object_identifier ( struct alisp_instance *  instance,
const char *  s 
) [static]

Definition at line 293 of file alisp.c.

References get_string_hash(), and incref_object().

Referenced by new_identifier().

static struct alisp_object* search_object_integer ( struct alisp_instance *  instance,
long  in 
) [static]

Definition at line 326 of file alisp.c.

References incref_object().

Referenced by new_integer().

static struct alisp_object* search_object_pointer ( struct alisp_instance *  instance,
const void *  ptr 
) [static]

Definition at line 360 of file alisp.c.

References incref_object().

Referenced by new_pointer().

static struct alisp_object* search_object_string ( struct alisp_instance *  instance,
const char *  s 
) [static]

Definition at line 309 of file alisp.c.

References get_string_hash(), and incref_object().

Referenced by new_string().

static struct alisp_object_pair* set_object ( struct alisp_instance *  instance,
struct alisp_object *  name,
struct alisp_object *  value 
) [static]

Definition at line 863 of file alisp.c.

References delete_tree(), free(), get_string_hash(), id, malloc(), and nomem().

Referenced by F_defun(), F_set(), and F_setq().

static struct alisp_object_pair* set_object_direct ( struct alisp_instance *  instance,
struct alisp_object *  name,
struct alisp_object *  value 
) [static]

Definition at line 823 of file alisp.c.

References delete_tree(), free(), get_string_hash(), id, malloc(), and nomem().

Referenced by eval_func().

static struct alisp_object* unset_object ( struct alisp_instance *  instance,
struct alisp_object *  name 
) [static]

Definition at line 899 of file alisp.c.

References alsa_lisp_nil, free(), get_string_hash(), id, and lisp_warn().

Referenced by eval_func(), F_unset(), and F_unsetq().

static int xgetc ( struct alisp_instance *  instance  )  [static]

Definition at line 496 of file alisp.c.

Referenced by gettoken().

static void xungetc ( struct alisp_instance *  instance,
int  c 
) [inline, static]

Definition at line 504 of file alisp.c.

Referenced by gettoken().


Variable Documentation

struct alisp_object alsa_lisp_nil

Definition at line 40 of file alisp.c.

Referenced by alsa_lisp_function(), alsa_lisp_init_objects(), alsa_lisp_seq_count(), alsa_lisp_seq_next(), car(), cdr(), check_set_object(), count_list(), delete_object(), eval_cons(), eval_cons1(), eval_func(), F_add(), F_and(), F_assoc(), F_assq(), F_atom(), F_check_memory(), F_compare_strings(), F_concat(), F_cond(), F_defun(), F_div(), F_dump_memory(), F_dump_objects(), F_eq(), F_equal(), F_exfun(), F_format(), F_funcall(), F_ge(), F_gt(), F_if(), F_include(), F_le(), F_list(), F_lt(), F_mod(), F_mul(), F_not(), F_nth(), F_numeq(), F_numneq(), F_or(), F_path(), F_princ(), F_prog1(), F_prog2(), F_progn(), F_rassoc(), F_rassq(), F_set(), F_setq(), F_stat_memory(), F_string_to_float(), F_string_to_integer(), F_sub(), F_unless(), F_unsetq(), F_when(), F_while(), get_object(), get_object1(), incref_object(), new_cons_pointer(), new_object(), parse_form(), parse_object(), princ_cons(), replace_object(), and unset_object().

struct alisp_object alsa_lisp_t

Definition at line 41 of file alisp.c.

Referenced by alsa_lisp_init_objects(), check_set_object(), delete_object(), F_atom(), F_check_memory(), F_compare_strings(), F_dump_memory(), F_dump_objects(), F_eq(), F_equal(), F_exfun(), F_gc(), F_ge(), F_gt(), F_le(), F_lt(), F_not(), F_numeq(), F_numneq(), incref_object(), and parse_object().

struct intrinsic intrinsics[] [static]

Definition at line 2968 of file alisp.c.

Referenced by alsa_lisp_function(), and eval_cons1().


Generated on Fri Nov 28 00:07:33 2008 for elphel by  doxygen 1.5.1