TeX in C
Explore TeX with modern c compiler.
hash.h
浏览该文件的文档.
1 #pragma once
2 #ifndef INC_HASH_H
3 //
4 #define INC_HASH_H
5 #include "global.h"
6 #include "charset.h" // [type] ASCIICode
7 #include "str.h"
8 #include "fonts.h" // InternalFontNumber
9 #include "eqtb.h" // UNDEFINED_CONTROL_SEQUENCE, HASH_BASE
10 
12 extern Pointer hash_used;
13 extern Integer cs_count;
14 
15 extern void hash_var_init();
16 extern void hash_init_once();
17 extern StrNumber get_text(size_t x);
18 extern void set_text(size_t x, StrNumber s);
21 extern HalfWord idlookup_p(ASCIICode buf_ptr[], Integer len, Boolean no_new_cs);
22 extern void print_cs(long p);
23 extern void sprint_cs(Pointer p);
24 extern void primitive(StrNumber s, QuarterWord c, HalfWord o);
25 
26 #endif /* INC_HASH_H */
uint16_t QuarterWord
[p43#113]: QuarterWord(8=>16) .
Definition: tex_types.h:126
uint32_t HalfWord
[p43#113]: HalfWord(16=>32) .
Definition: tex_types.h:127
UChar ASCIICode
[#18]: ASCIICode::UChar(8) = [0, 255]
Definition: charset.h:11
#define HASH_BASE
[p82#222] [region 2] eqtb[HASH_BASE, (GLUE_BASE - 1)] holds current equivalents of multiletter contro...
Definition: eqtb.h:67
#define UNDEFINED_CONTROL_SEQUENCE
[region 2] dummy location.
Definition: eqtb.h:94
Pointer hash_used
Definition: hash.c:21
void set_text(size_t x, StrNumber s)
Definition: hash.c:45
void primitive(StrNumber s, QuarterWord c, HalfWord o)
[p105#264]
Definition: hash.c:173
void hash_var_init()
[#257]
Definition: hash.c:27
Integer cs_count
Definition: hash.c:23
void hash_init_once()
[#258]
Definition: hash.c:36
void sprint_cs(Pointer p)
[#263]: prints a control sequence.
Definition: hash.c:156
TwoHalves hash[UNDEFINED_CONTROL_SEQUENCE - HASH_BASE]
[#256]
Definition: hash.c:20
StrNumber fontidtext(InternalFontNumber x)
[#256] a frozen font identifier’s name
Definition: hash.c:48
StrNumber get_text(size_t x)
Definition: hash.c:44
void set_fontidtext(InternalFontNumber x, StrNumber s)
Definition: hash.c:52
void print_cs(long p)
[#262] prints a purported control sequence.
Definition: hash.c:124
HalfWord idlookup_p(ASCIICode buf_ptr[], Integer len, Boolean no_new_cs)
[#259] search the hash table.
Definition: hash.c:70
uint_fast32_t StrNumber
Definition: str.h:73
UChar InternalFontNumber
[#548]: [FONT_BASE, FONT_MAX] = [0, 75]
Definition: fonts.h:92
[p43#113]: TwoHalves(64) .
Definition: tex_types.h:144
int64_t Integer
Integer(64) =
Definition: tex_types.h:42
size_t Pointer
Pointer::size_t(64), a flag or a location in mem or eqtb.
Definition: tex_types.h:45
bool Boolean
布尔类型定义
Definition: tex_types.h:11