1 /* Copyright (c) 2003, Steve Dekorte
2 docLicense("BSD revised")
5 #ifndef IOTOKEN_DEFINED
6 #define IOTOKEN_DEFINED 1
34 typedef struct IoToken IoToken
;
47 IoToken
*IoToken_new(void);
48 void IoToken_free(IoToken
*self
);
50 const char *IoToken_typeName(IoToken
*self
);
52 void IoToken_name_length_(IoToken
*self
, const char *name
, size_t len
);
53 void IoToken_name_(IoToken
*self
, const char *name
);
54 char *IoToken_name(IoToken
*self
);
55 #define IOTOKEN_NAME(self) (self->name ? self->name : (char *)"")
57 void IoToken_error_(IoToken
*self
, const char *name
);
58 char *IoToken_error(IoToken
*self
);
60 int IoToken_nameIs_(IoToken
*self
, const char *name
);
61 IoTokenType
IoToken_type(IoToken
*self
);
63 int IoToken_lineNumber(IoToken
*self
);
64 int IoToken_charNumber(IoToken
*self
);
66 void IoToken_quoteName_(IoToken
*self
, const char *name
);
67 void IoToken_type_(IoToken
*self
, IoTokenType type
);
68 void IoToken_nextToken_(IoToken
*self
, IoToken
*nextToken
);
69 void IoToken_print(IoToken
*self
);
70 void IoToken_printSelf(IoToken
*self
);
72 int IoTokenType_isValidMessageName(IoTokenType self
);