Annotation of src/usr.bin/dc/extern.h, Revision 1.1
1.1 ! otto 1: /* $OpenBSD$ */
! 2:
! 3: /*
! 4: * Copyright (c) 2003, Otto Moerbeek <otto@drijf.net>
! 5: *
! 6: * Permission to use, copy, modify, and distribute this software for any
! 7: * purpose with or without fee is hereby granted, provided that the above
! 8: * copyright notice and this permission notice appear in all copies.
! 9: *
! 10: * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
! 11: * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
! 12: * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
! 13: * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
! 14: * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
! 15: * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
! 16: * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
! 17: */
! 18:
! 19: #include <stdbool.h>
! 20: #include "bcode.h"
! 21:
! 22:
! 23: /* inout.c */
! 24: void src_setstream(struct source *, FILE *);
! 25: void src_setstring(struct source *, char *);
! 26: struct number *readnumber(struct source *, u_int);
! 27: void printnumber(FILE *, const struct number *, u_int);
! 28: char *read_string(struct source *);
! 29: void print_value(FILE *, const struct value *, const char *, u_int);
! 30: void print_ascii(FILE *, const struct number *);
! 31:
! 32: /* mem.c */
! 33: struct number *new_number(void);
! 34: void free_number(struct number *);
! 35: struct number *dup_number(const struct number *);
! 36: void *bmalloc(size_t);
! 37: void *brealloc(void *, size_t);
! 38: char *bstrdup(const char *p);
! 39: void bn_check(int);
! 40: void bn_checkp(const void *);
! 41:
! 42: /* stack.c */
! 43: void stack_init(struct stack *);
! 44: void stack_free_value(struct value *);
! 45: struct value *stack_dup_value(const struct value *, struct value *);
! 46: int stack_size(const struct stack *);
! 47: void stack_dup(struct stack *);
! 48: void stack_pushnumber(struct stack *, struct number *);
! 49: void stack_pushstring(struct stack *stack, char *);
! 50: void stack_push(struct stack *, struct value *);
! 51: void stack_set_tos(struct stack *, struct value *);
! 52: struct value *stack_tos(const struct stack *);
! 53: struct value *stack_pop(struct stack *);
! 54: struct number *stack_popnumber(struct stack *);
! 55: char * stack_popstring(struct stack *);
! 56: void stack_clear(struct stack *);
! 57: void stack_print(FILE *, const struct stack *, const char *,
! 58: u_int base);
! 59: void frame_assign(struct stack *, size_t, const struct value *);
! 60: struct value * frame_retrieve(const struct stack *, size_t);
! 61: /* void frame_free(struct stack *); */