This is bib.h in view mode; [Download] [Up]
/* bib.h * cm, 20 Dec 90 * * support for scribe-type bibliography database files. */ /* * Copyright (c) 1991 Carnegie Mellon University * All Rights Reserved. * * Permission to use, copy, modify and distribute this software and its * documentation is hereby granted, provided that both the copyright * notice and this permission notice appear in all copies of the * software, derivative works or modified versions, and any portions * thereof, and that both notices appear in supporting documentation. * * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. * * Carnegie Mellon requests users of this software to return to * * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU * School of Computer Science * Carnegie Mellon University * Pittsburgh PA 15213-3890 * * any improvements or extensions that they make and grant Carnegie Mellon * the rights to redistribute these changes. */ #define FMBIBSPEC ".fmbibfiles" #define BIB_OPENPAREN '(' #define BIB_CLOSEPAREN ')' #define BIB_OPENBR '{' #define BIB_CLOSEBR '}' #define BIB_OPENBRACE '[' #define BIB_CLOSEBRACE ']' #define BIB_FIELDSEP ',' #define BIB_QUOTE '"' #define BIB_EQUALS '=' #define BIB_AT '@' typedef char RefType; typedef char FldType; /* * since most bibent fields are optional, bibents use only * a linked list of only the fields which are present. */ typedef struct bibfield { FldType bf_type; char *bf_val; struct bibfield *bf_l; struct bibfield *bf_r; } BibField; /* yes, and finally, a tree of bibliography entries which * have been parsed, will be built, sorted by be_lookup, * which is the field to be x-reffed in the text. */ typedef struct bibent { RefType be_reftype; /* scribe type of bibliography entry. */ char *be_xref; /* x-ref to marker (case insensitive) */ short be_found; /* true if found in a bibliography file */ long be_rollcall; /* bit-field for presence of field types */ BibField *be_fields; /* linked list of fields */ struct bibent *be_l; /* left tree pointer */ struct bibent *be_r; /* right tree pointer */ } BibEnt; char *bib_gettok(); BibEnt *new_bibent(); BibEnt *find_bibent(); char *insert_fld(); char *find_fld(); BibField *find_bibfield(); FldType fldtype(); RefType reftype(); char *get_opp_brace(); char *fldname(); char *refname(); char *find_bibdef();
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.