V25 with 64-bit support
[pforth] / csrc / pfcompil.h
CommitLineData
bb6b2dcd 1/* @(#) pfcompil.h 96/12/18 1.11 */\r
2\r
3#ifndef _pforth_compile_h\r
4#define _pforth_compile_h\r
5\r
6/***************************************************************\r
7** Include file for PForth Compiler\r
8**\r
9** Author: Phil Burk\r
10** Copyright 1994 3DO, Phil Burk, Larry Polansky, David Rosenboom\r
11**\r
12** The pForth software code is dedicated to the public domain,\r
13** and any third party may reproduce, distribute and modify\r
14** the pForth software code or any derivative works thereof\r
15** without any compensation or license. The pForth software\r
16** code is provided on an "as is" basis without any warranty\r
17** of any kind, including, without limitation, the implied\r
18** warranties of merchantability and fitness for a particular\r
19** purpose and their equivalents under the laws of any jurisdiction.\r
20**\r
21***************************************************************/\r
22\r
23#ifdef __cplusplus\r
24extern "C" {\r
25#endif\r
26\r
27Err ffPushInputStream( FileStream *InputFile );\r
28ExecToken NameToToken( const ForthString *NFA );\r
1cb310e6 29FileStream * ffConvertSourceIDToStream( cell_t id );\r
bb6b2dcd 30FileStream *ffPopInputStream( void );\r
1cb310e6 31cell_t ffConvertStreamToSourceID( FileStream *Stream );\r
32cell_t ffFind( const ForthString *WordName, ExecToken *pXT );\r
33cell_t ffFindC( const char *WordName, ExecToken *pXT );\r
34cell_t ffFindNFA( const ForthString *WordName, const ForthString **NFAPtr );\r
35cell_t ffNumberQ( const char *FWord, cell_t *Num );\r
36cell_t ffRefill( void );\r
37cell_t ffTokenToName( ExecToken XT, const ForthString **NFAPtr );\r
38cell_t *NameToCode( ForthString *NFA );\r
39PForthDictionary pfBuildDictionary( cell_t HeaderSize, cell_t CodeSize );\r
bb6b2dcd 40char *ffWord( char c );\r
41const ForthString *NameToPrevious( const ForthString *NFA );\r
1cb310e6 42cell_t FindSpecialCFAs( void );\r
43cell_t FindSpecialXTs( void );\r
44cell_t NotCompiled( const char *FunctionName );\r
45void CreateDicEntry( ExecToken XT, const ForthStringPtr FName, ucell_t Flags );\r
46void CreateDicEntryC( ExecToken XT, const char *CName, ucell_t Flags );\r
47void ff2Literal( cell_t dHi, cell_t dLo );\r
48void ffALiteral( cell_t Num );\r
bb6b2dcd 49void ffColon( void );\r
50void ffCreate( void );\r
51void ffCreateSecondaryHeader( const ForthStringPtr FName);\r
52void ffDefer( void );\r
53void ffFinishSecondary( void );\r
1cb310e6 54void ffLiteral( cell_t Num );\r
bb6b2dcd 55void ffStringCreate( ForthStringPtr FName);\r
56void ffStringDefer( const ForthStringPtr FName, ExecToken DefaultXT );\r
57void pfHandleIncludeError( void );\r
58\r
59ThrowCode ffSemiColon( void );\r
60ThrowCode ffOK( void );\r
61ThrowCode ffInterpret( void );\r
62ThrowCode ffOuterInterpreterLoop( void );\r
63ThrowCode ffIncludeFile( FileStream *InputFile );\r
64\r
65#ifdef PF_SUPPORT_FP\r
66void ffFPLiteral( PF_FLOAT fnum );\r
67#endif\r
68\r
69#ifdef __cplusplus\r
70} \r
71#endif\r
72\r
73#endif /* _pforth_compile_h */\r