/** * Title: Parsing ANS Forth strings and * the input stream * File: parsing-ext.h * Author: David N. Williams * License: LGPL * Version: 1.0.0 * Last revision: October 22, 2010 * * Copyright (C) 1996-2008, 2010 by David N. Williams * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later * version. * * This library is distributed in the hope that it will be * useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU Library General Public License for more * details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA. * * If you take advantage of the option in the LGPL to put a * particular version of this library under the GPL, the author * would regard it as polite if you would put any direct * modifications under the LGPL as well, and include a copy of * this request near the beginning of the modified library * source. A "direct modification" is one that enhances or * extends the library in line with its original concept, as * opposed to developing a distinct application or library which * might use it. */ #ifndef _PFE_PARSING_EXT_H #define _PFE_PARSING_EXT_H /*********************** Functions and Words ************************/ /* Lib identifier */ FCode (dw_parsing_lib_s); /* 1.1 ToolBelt 2002 */ FCode (dw_string_slash); FCode (dw_end_c_fetch); FCode (dw_skip); FCode (dw_scan); FCode (dw_scan_back); FCode (dw_white_Q); FCode (dw_trim_bar); /* 1.2 ToolBelt 2000 */ FCode (dw_cut_split); FCode (dw_s_starts); FCode (dw_s_starts_nc); FCode (dw_s_ends); FCode (dw_s_ends_nc); /* 1.3 Other String Extensions */ FCode (p4_slash_string); FCode (p4_minus); FCode (p4_nip); FCode (dw_string_slash); FCode (dw_skip_back); FCode (dw_bar_trim); FCode (dw_bar_trim_bar); FCode (dw_seek); FCode (dw_set_in); FCode (dw_set_scan); FCode (dw_set_seek); FCode (dw_set_index); FCode (dw_set_starts); FCode (dw_set_ends); /* FCode (dw_set_skip); */ FCode (dw_separate); FCode (dw_s_separate); FCode (dw_set_separate); FCode (dw_s_after); /* FCode (dw_s_skip); */ /* FCode (dw_s_scan); */ /* FCode (dw_s_seek); */ FCode (dw_first_word); FCode (dw_separate_word); /* 2.1 Parse Area */ FCode (dw_empty_parse_area); FCode (dw_parse_area_empty_Q); _extern void dw_parse_area (const p4_char_t **p, int *n); FCode (dw_parse_area_fetch); FCode (dw_parse_area_store); // FCode (dw_parse_name); FCode (dw_preparse_name); FCode (dw_parse_name_away); FCode (dw_set_parse); FCode (dw_space_or_punct_parse); FCode (dw_to_in_decrement); FCode (dw_to_in_increment); /* 2.2 Across Lines or Blocks */ FCode (dw_backslash_backslash); FCode (dw_Q_emit_cr); FCode (dw_next_instream_name); /* FCode (dw_set_skip_instream); */ /* FCode (dw_set_scan_instream); */ /* FCode (dw_set_seek_instream); */ _extern int dw_s_scan_input (const p4_char_t *addr, p4cell len); FCode (dw_s_seek_instream); FCode (dw_s_white_delimited_Q); FCode (dw_bar_s_bar_seek_instream); FCode (dw_parens_star); /* FCode (dw_parens_parens); */ /* FCode (dw_3_dashes); */ #endif /* ndef _PFE_PARSING_EXT_H */