ref: 3f26a0f2a1f699e628136ec5be6178b5ab40fc44
dir: /fns.h/
/* parser.c */ Term *parse(int, Biobuf *, int); /* prettyprint.c */ Rune *prettyprint(Term *, int, int, int); /* misc.c */ Term *copyterm(Term *, uvlong *); Term *appendterm(Term *, Term *); int termslength(Term *); Term *mkatom(Rune *); Term *mkvariable(Rune *); Term *mkcompound(Rune *, int, Term *); Term *mknumber(int, vlong, double); Term *mkstring(Rune *); Term *mklist(Term *); /* eval.c */ int evalquery(Term *, Term *, Binding **); int unify(Term *, Term *, Binding **); void applybinding(Term *, Binding *); /* repl.c */ void repl(Term *); /* builtins.c */ Builtin findbuiltin(Term *); /* flags.c */ void initflags(void); Term *setflag(Rune *, Term *); /* error.c */ Term *instantiationerror(void); Term *typeerror(Rune *, Term *); Term *domainerror(Rune *, Term *); Term *existenceerror(Rune *, Term *); Term *permissionerror(Rune *, Rune *, Term *); Term *representationerror(Rune *); Term *evaluationerror(Rune *); Term *resourceerror(Rune *); Term *syntaxerror(Rune *); /* streams.c */ void initstreams(void); int openstream(Rune *, Rune *, Term *, Term **); void closestream(Term *); Term *currentinputstream(void); Term *currentoutputstream(void); void setcurrentinputstream(Term *); void setcurrentoutputstream(Term *); int isopenstream(Term *); int isinputstream(Term *); int isoutputstream(Term *); int istextstream(Term *); int isbinarystream(Term *); int readterm(Term *, Term *, Term **); void writeterm(Term *, Term *, Term *);