aboutsummaryrefslogtreecommitdiff
path: root/src/hyper/token.h
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-05-22 15:25:13 +0000
committerdos-reis <gdr@axiomatics.org>2008-05-22 15:25:13 +0000
commitd8a4d498a6a0d1d34e25b6838b6450bd7d3e646f (patch)
tree235371f427deb172ac4d2920539094d20b12b20b /src/hyper/token.h
parent3b89765b4d9c01a2f083e08b569e9b33b16ac617 (diff)
downloadopen-axiom-d8a4d498a6a0d1d34e25b6838b6450bd7d3e646f.tar.gz
Avoid numeric constants macros.
Diffstat (limited to 'src/hyper/token.h')
-rw-r--r--src/hyper/token.h370
1 files changed, 184 insertions, 186 deletions
diff --git a/src/hyper/token.h b/src/hyper/token.h
index 24a3c3f3..78d8dafb 100644
--- a/src/hyper/token.h
+++ b/src/hyper/token.h
@@ -57,203 +57,201 @@ typedef struct Token {
/*
User tokens. ie, these can be found on a page
*/
-
-#define Word 1
-#define Page 2
-#define Lispcommandquit 3
-#define BoldFace 4
-#define Link 5
-#define Downlink 6
-#define Beginscroll 7
-#define Spadcommand 8
-#define NoLines 9
-#define Env 10
-#define Par 11
-#define Center 12
-#define Begin 13
-#define Beginitems 14
-#define Item 15
-#define Table 16
-#define Box 17
-#define Tab 18
-#define Space 19
-#define Indent 20
-#define Horizontalline 21
-#define Newline 22
-#define Enditems 23
-#define Returnbutton 24
-#define Memolink 25
-#define Upbutton 26
-#define Endscroll 27
-#define Thispage 28
-#define Returnto 29
-#define Free 30
-#define Bound 31
-#define Lisplink 32
-#define Unixlink 33
-#define Mbox 34
-#define Inputstring 35
-#define StringValue 36
-#define Spadlink 37
-#define Inputbitmap 38
-#define Inputpixmap 39
-#define Unixcommand 40
-#define Emphasize 41
-#define Lispcommand 42
-#define LispMemoLink 43
-#define LispDownLink 44
-#define Spadcall 45
-#define Spadcallquit 46
-#define Spaddownlink 47
-#define Spadmemolink 48
-#define Qspadcall 49
-#define Qspadcallquit 50
-#define SimpleBox 51
-#define Radioboxes 52
-#define BoxValue 53
-#define VSpace 54
-#define HSpace 55
-#define NewCommand 56
-#define WindowId 57
-#define Beep 58
-#define Quitbutton 59
-#define Begintitems 60
-#define Titem 61
-#define End 62
-#define It 63
-#define Sl 64
-#define Tt 65
-#define Rm 66
-#define Ifcond 67
-#define Else 68
-#define Fi 69
-#define Newcond 70
-#define Setcond 71
-#define Button 72
-#define Windowlink 73
-#define Haslisp 74
-#define Hasup 75
-#define Hasreturn 76
-#define Hasreturnto 77
-#define Lastwindow 78
-#define Endtitems 79
-#define Lispwindowlink 80
-#define Beginpile 81
-#define Endpile 82
-#define Nextline 83
-#define Pastebutton 84
-#define Color 85
-#define Helppage 86
-#define Patch 87
-#define Radiobox 88
-#define ifrecond 89
-#define Math 90
-#define Mitem 91
-#define Pagename 92
-#define Examplenumber 93
-#define Replacepage 94
-#define Inputimage 95
-#define Spadgraph 96
-#define Indentrel 97
-#define Controlbitmap 98
-
-#define NumberUserTokens 98
-
-
-extern char *token_table[];
-
-
-/* places from which input may be read */
-#define FromFile 1
-#define FromString 2
-#define FromSpadSocket 3
-#define FromUnixFD 4
-
-extern FILE *unixfd;
+typedef enum openaxiom_token_kind {
+ Word = 1,
+ Page = 2,
+ Lispcommandquit = 3,
+ BoldFace = 4,
+ Link = 5,
+ Downlink = 6,
+ Beginscroll = 7,
+ Spadcommand = 8,
+ NoLines = 9,
+ Env = 10,
+ Par = 11,
+ Center = 12,
+ Begin = 13,
+ Beginitems = 14,
+ Item = 15,
+ Table = 16,
+ Box = 17,
+ Tab = 18,
+ Space = 19,
+ Indent = 20,
+ Horizontalline = 21,
+ Newline = 22,
+ Enditems = 23,
+ Returnbutton = 24,
+ Memolink = 25,
+ Upbutton = 26,
+ Endscroll = 27,
+ Thispage = 28,
+ Returnto = 29,
+ Free = 30,
+ Bound = 31,
+ Lisplink = 32,
+ Unixlink = 33,
+ Mbox = 34,
+ Inputstring = 35,
+ StringValue = 36,
+ Spadlink = 37,
+ Inputbitmap = 38,
+ Inputpixmap = 39,
+ Unixcommand = 40,
+ Emphasize = 41,
+ Lispcommand = 42,
+ LispMemoLink = 43,
+ LispDownLink = 44,
+ Spadcall = 45,
+ Spadcallquit = 46,
+ Spaddownlink = 47,
+ Spadmemolink = 48,
+ Qspadcall = 49,
+ Qspadcallquit = 50,
+ SimpleBox = 51,
+ Radioboxes = 52,
+ BoxValue = 53,
+ VSpace = 54,
+ HSpace = 55,
+ NewCommand = 56,
+ WindowId = 57,
+ Beep = 58,
+ Quitbutton = 59,
+ Begintitems = 60,
+ Titem = 61,
+ End = 62,
+ It = 63,
+ Sl = 64,
+ Tt = 65,
+ Rm = 66,
+ Ifcond = 67,
+ Else = 68,
+ Fi = 69,
+ Newcond = 70,
+ Setcond = 71,
+ Button = 72,
+ Windowlink = 73,
+ Haslisp = 74,
+ Hasup = 75,
+ Hasreturn = 76,
+ Hasreturnto = 77,
+ Lastwindow = 78,
+ Endtitems = 79,
+ Lispwindowlink = 80,
+ Beginpile = 81,
+ Endpile = 82,
+ Nextline = 83,
+ Pastebutton = 84,
+ Color = 85,
+ Helppage = 86,
+ Patch = 87,
+ Radiobox = 88,
+ ifrecond = 89,
+ Math = 90,
+ Mitem = 91,
+ Pagename = 92,
+ Examplenumber = 93,
+ Replacepage = 94,
+ Inputimage = 95,
+ Spadgraph = 96,
+ Indentrel = 97,
+ Controlbitmap = 98,
+ NumberUserTokens = 98,
/*
* Here are the system tokens. These are used internally to help
* with parsing and displaying of text
*/
-
-#define SystemTokens 1001
-#define Lbrace 1001
-#define Rbrace 1002
-#define Macro 1003
-#define Group 1004
-#define Scrollbar 1005
-#define Pound 1006
-#define Lsquarebrace 1007
-#define Rsquarebrace 1008
-#define Punctuation 1009
-#define Dash 1010
-#define Tableitem 1011
-#define Scrollingnode 1012
-#define Headernode 1013
-#define Footernode 1014
-#define Verbatim 1015
-#define Scroll 1016
-#define Dollar 1017
-#define Percent 1018
-#define Carrot 1019
-#define Underscore 1020
-#define Tilde 1021
-#define Cond 1022
-#define Noop 1023
-#define Description 1024
-#define Icorrection 1025
-#define Boxcond 1026
-#define Unkeyword 1027
-#define Titlenode 1028
-#define Paste 1029
-#define Spadsrc 1030
-#define Helpbutton 1031
-#define Spadsrctxt 1032
-
-
+ SystemTokens = 1001,
+ Lbrace = 1001,
+ Rbrace = 1002,
+ Macro = 1003,
+ Group = 1004,
+ Scrollbar = 1005,
+ Pound = 1006,
+ Lsquarebrace = 1007,
+ Rsquarebrace = 1008,
+ Punctuation = 1009,
+ Dash = 1010,
+ Tableitem = 1011,
+ Scrollingnode = 1012,
+ Headernode = 1013,
+ Footernode = 1014,
+ Verbatim = 1015,
+ Scroll = 1016,
+ Dollar = 1017,
+ Percent = 1018,
+ Carrot = 1019,
+ Underscore = 1020,
+ Tilde = 1021,
+ Cond = 1022,
+ Noop = 1023,
+ Description = 1024,
+ Icorrection = 1025,
+ Boxcond = 1026,
+ Unkeyword = 1027,
+ Titlenode = 1028,
+ Paste = 1029,
+ Spadsrc = 1030,
+ Helpbutton = 1031,
+ Spadsrctxt = 1032,
/*
* Here are the tokens used to mark the end to some sort of group of
* tokens. ie, the tokens found in a centerline command
*/
+ Endtokens = 2000,
+ End1 = 2001,
+ End2 = 2002,
+ Endbutton = 2003,
+ Endlink = 2004,
+ Endheader = 2005,
+ Endfooter = 2006,
+ Endscrolling = 2007,
+ Endgroup = 2008,
+ Endarg = 2009,
+ Endbox = 2010,
+ Endmbox = 2011,
+ Endspadcommand = 2012,
+ Endpix = 2013,
+ Endmacro = 2014,
+ Endparameter = 2015,
+ Endtable = 2016,
+ Endtableitem = 2017,
+ End3 = 2018,
+ Endif = 2019,
+ Enddescription = 2020
+ Endinputbox = 2021,
+ Endtitle = 2022,
+ Endpastebutton = 2023,
+
+ Endtypes = 3000,
+ Endpage = 3002,
+ EndScroll = 3007, /* had to use a S because Endscroll is
+ already a keyword */
+
+ Endcenter = 3012,
+ EndItems = 3014, /* Same thing here as EndScroll except
+ with the i */
+ EndTitems = 3060, /* Ibid for the T */
+ Endpatch = 3087,
+ Endverbatim = 4015,
+ Endmath = 4016,
+ Endpaste = 4029,
+ Endspadsrc = 4030
+} openaxiom_token_kind;
-#define Endtokens 2000
-#define End1 2001
-#define End2 2002
-#define Endbutton 2003
-#define Endlink 2004
-#define Endheader 2005
-#define Endfooter 2006
-#define Endscrolling 2007
-#define Endgroup 2008
-#define Endarg 2009
-#define Endbox 2010
-#define Endmbox 2011
-#define Endspadcommand 2012
-#define Endpix 2013
-#define Endmacro 2014
-#define Endparameter 2015
-#define Endtable 2016
-#define Endtableitem 2017
-#define End3 2018
-#define Endif 2019
-#define Enddescription 2020
-#define Endinputbox 2021
-#define Endtitle 2022
-#define Endpastebutton 2023
-#define Endtypes 3000
-#define Endpage 3002
-#define EndScroll 3007 /* had to use a S because Endscroll is
- already a keyword */
+extern char *token_table[];
+
-#define Endcenter 3012
-#define EndItems 3014 /* Same thing here as EndScroll except
- with the i */
-#define EndTitems 3060 /* Ibid for the T */
-#define Endpatch 3087
-#define Endverbatim 4015
-#define Endmath 4016
-#define Endpaste 4029
-#define Endspadsrc 4030
+/* places from which input may be read */
+typedef enum openaxiom_input_kind {
+ FromFile = 1,
+ FromString = 2,
+ FromSpadSocket = 3,
+ FromUnixFD = 4
+} openaxiom_input_kind;
+
+extern FILE *unixfd;
#endif