summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/luatex.defines
blob: a36e3847b0fc4d267438997e3657a430e524a4f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
{  luatex.defines
   
   Copyright 1996-2006 Han The Thanh <thanh@pdftex.org>
   Copyright 2006-2008 Taco Hoekwater <taco@luatex.org>

   This file is part of LuaTeX.

   LuaTeX is free software; you can redistribute it and/or modify it under
   the terms of the GNU General Public License as published by the Free
   Software Foundation; either version 2 of the License, or (at your
   option) any later version.

   LuaTeX 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 Lesser General Public
   License for more details.

   You should have received a copy of the GNU General Public License along
   with LuaTeX; if not, see <http://www.gnu.org/licenses/>. }

{ $Id$ }

{ luatex.defines: additions for LuaTeX }

@define function simple_advance_width(); 

@define function new_node();
@define function new_glyph_node;
@define procedure flush_node();
@define function copy_node();
@define procedure couple_nodes();
@define function copy_node_list();
@define procedure flush_node_list();
@define function string_to_pseudo();
@define function do_set_attribute();
@define function copy_attribute_list();
@define procedure add_node_attr_ref();
@define procedure replace_attribute_list();
@define procedure update_attribute_cache;
@define const UNUSED_ATTRIBUTE;

@define function new_span_node();

@define function sizeof();
@define procedure memset();
@define function realloc();
@define function malloc();
@define function voidcast();
@define function fixmemcast();
@define function varmemcast();
@define type void;
@define procedure init_node_mem();
@define procedure print_node_mem_stats;
@define procedure dump_node_mem;
@define procedure undump_node_mem;
@define function visible_last_node_type();
@define var NULL;
@define var varmem;
@define var var_mem_max;
@define procedure check_buffer_overflow();
@define procedure check_pool_overflow();

@define function new_ligkern();
@define function make_lang_data();
@define procedure ext_do_line_break();
@define procedure initialize_active;
@define var prev_char_p;
@define function cur_break();
@define function break_node();

@define function divide_scaled();
@define function divide_scaled_n();

@define procedure new_hyphenation();
@define procedure load_tex_hyphenation();
@define procedure load_tex_patterns();
@define procedure dump_language_data;
@define procedure undump_language_data;
@define function insert_discretionary();
@define const select_disc;
@define function compound_word_break();
@define procedure set_pre_hyphen_char();
@define procedure set_post_hyphen_char();
@define procedure set_pre_exhyphen_char();
@define procedure set_post_exhyphen_char();
@define function get_pre_hyphen_char();
@define function get_post_hyphen_char();
@define function get_pre_exhyphen_char();
@define function get_post_exhyphen_char();


{ macros from luatex.h }
@define function pdf_char_marked();
@define function tex_b_open_in();
@define function vf_b_open_in ();
@define procedure pdf_mark_char();
@define procedure writepdf();
@define procedure pdfassert();

@define procedure luacall();
@define procedure luatokencall();
@define procedure closelua();
@define function get_lua_name();

{ for virtual file input }

@define procedure luacstring_close();
@define procedure luacstring_start();
@define var DEFAULT_CAT_TABLE;

{ for callbacks }

@define function  run_callback();
@define function  run_and_save_callback();
@define function  run_saved_callback();
@define procedure destroy_saved_callback();
@define function  callback_defined();
@define function  callbackluaid();
@define var find_write_file_callback;
@define var find_output_file_callback;
@define var find_image_file_callback;
@define var find_format_file_callback;
@define var find_read_file_callback;      
@define var open_read_file_callback;
@define var find_ocp_file_callback;
@define var read_ocp_file_callback;
@define var find_vf_file_callback;
@define var read_vf_file_callback;
@define var find_data_file_callback;
@define var read_data_file_callback;
@define var find_font_file_callback;
@define var read_font_file_callback;
@define var find_map_file_callback;
@define var read_map_file_callback;
@define var find_enc_file_callback;
@define var read_enc_file_callback;
@define var find_type1_file_callback;
@define var read_type1_file_callback;
@define var find_truetype_file_callback;
@define var read_truetype_file_callback;
@define var find_opentype_file_callback;
@define var read_opentype_file_callback;
@define var find_sfd_file_callback;
@define var read_sfd_file_callback;
@define var find_pk_file_callback;
@define var read_pk_file_callback;
@define var show_error_hook_callback;
@define var process_input_buffer_callback;
@define var start_page_number_callback;
@define var stop_page_number_callback;
@define var start_run_callback;
@define var stop_run_callback;
@define var define_font_callback;
@define var token_filter_callback;
@define var pre_linebreak_filter_callback;
@define var linebreak_filter_callback;
@define var post_linebreak_filter_callback;
@define var buildpage_filter_callback;
@define var hyphenate_callback;

@define function lua_hyphenate_callback();
@define function lua_linebreak_callback();

@define procedure get_saved_lua_boolean();
@define procedure get_saved_lua_number();
@define procedure get_saved_lua_string();
@define procedure get_lua_boolean();
@define procedure get_lua_number();
@define procedure get_lua_string();

@define procedure get_token_lua;
@define procedure lua_node_filter();
@define procedure lua_node_filter_s();
@define function lua_hpack_filter();
@define function lua_vpack_filter();

@define procedure check_texconfig_init;

@define procedure lua_pdf_literal();

{ bits for extended char code access }

@define const tex_mathcode    ;
@define const aleph_mathcode  ;
@define const xetex_mathcode   ;
@define const xetexnum_mathcode;

@define type mathcodeval;
@define @field origin_value;
@define @field class_value;
@define @field family_value;
@define @field character_value;

@define type delcodeval;
@define @field small_family_value;
@define @field small_character_value;
@define @field large_family_value;
@define @field large_character_value;

@define function get_math_code();
@define function get_math_code_num();
@define procedure set_math_code();
@define function get_del_code();
@define procedure set_del_code();
@define procedure show_mathcode_value();

@define function scan_mathchar();
@define function scan_delimiter_as_mathchar();
@define function mathchar_from_integer();

@define procedure init_math_fields;
@define procedure setup_math_style;
@define procedure print_math_style;

@define procedure unsave_math_codes ();
@define procedure initialize_math_codes;
@define procedure dump_math_codes;
@define procedure undump_math_codes;
@define procedure free_math_codes;

@define function get_lc_code();
@define procedure set_lc_code();

@define function get_uc_code();
@define procedure set_uc_code();

@define function get_sf_code();
@define procedure set_sf_code();

@define function get_cat_code();
@define procedure set_cat_code();

@define function valid_catcode_table ();
@define procedure clear_catcode_stack ();
@define procedure copy_cat_codes ();
@define procedure initex_cat_codes ();
@define procedure unsave_cat_codes ();
@define procedure unsave_text_codes ();
@define procedure initializetextcodes;
@define procedure free_text_codes;
@define procedure dumptextcodes;
@define procedure undumptextcodes;

@define procedure dumpluacregisters;
@define procedure undumpluacregisters;

@define function do_a_open_out();
@define function do_b_open_out();

@define procedure flush_loggable_info;

@define var extra_version_info;
@define procedure write_svnversion();

{ bits and pieces from aleph }

@define procedure btestin ;

@define function readtfmfile();
@define function next_vf_byte;
@define function read_vf_file();
@define function read_ocp_file();
@define function read_data_file();

@define var ocp_tables;

@define procedure allocate_ocp_table ();
@define procedure dump_ocp_table ();
@define procedure undump_ocp_table ();
@define procedure run_external_ocp ();

@define function  copy_font_info();

{ 'texfont' library definitions }

@define procedure dump_font ();
@define procedure undump_font ();
@define function  is_valid_font();
@define function  copy_font();
@define function  scale_font();
@define function  max_font_id;
@define procedure set_max_font_id();

@define function font_name();
@define function font_area();
@define function get_font_name();
@define function get_font_area();
@define function font_bc();
@define function font_ec();

@define function tex_font_name();
@define function tex_font_area();
@define procedure set_tex_font_name();

@define procedure set_pdf_font_size();
@define procedure set_pdf_font_num();
@define procedure set_pdf_font_blink();
@define procedure set_pdf_font_elink();
@define procedure set_pdf_font_expand_ratio();
@define procedure set_pdf_font_shrink();
@define procedure set_pdf_font_stretch();
@define procedure set_pdf_font_step();
@define procedure set_pdf_font_auto_expand();
@define procedure set_pdf_font_attr();

@define function pdf_font_size();
@define function pdf_font_num();
@define function pdf_font_blink();
@define function pdf_font_elink();
@define function pdf_font_expand_ratio();
@define function pdf_font_shrink();
@define function pdf_font_stretch();
@define function pdf_font_step();
@define function pdf_font_auto_expand();
@define function pdf_font_attr();

@define function cmp_font_area();
@define function cmp_font_name();
@define function font_shareable();

@define function fontglue();
@define procedure setfontglue();

@define function font_check_0();
@define function font_check_1();
@define function font_check_2();
@define function font_check_3();

@define function font_size();
@define function font_slant();
@define function font_extend();
@define function font_used();
@define procedure set_font_used();
@define function font_touched();
@define procedure set_font_touched();

@define function font_dsize();
@define function font_natural_dir();

@define function font_params();
@define function font_param();
@define procedure set_font_params();
@define procedure set_font_param();
@define function slant();
@define function quad();
@define function x_height();
@define function space();
@define function extra_space();
@define function space_stretch();
@define function space_shrink();

@define function font_kerns();
@define function font_kern_sc();
@define procedure adjust_font_kern();

@define function font_italics();
@define function font_italic();
@define procedure set_font_italic();

@define function has_lig();
@define function has_kern();

@define type liginfo;

@define function get_ligature();
@define function is_valid_ligature();
@define function lig_type();
@define function lig_replacement();

@define function is_ligature();
@define function is_leftboundary();
@define function is_rightboundary();

@define procedure set_to_character();
@define procedure set_to_glyph();
@define procedure set_is_leftghost();
@define procedure set_is_rightghost();

@define var non_boundarychar;

@define function ext_top();
@define function ext_mid();
@define function ext_bot();
@define function ext_rep();

@define var ext_tag;
@define var list_tag;

@define var virtual_font_type;
@define function font_type();

@define function font_format();
@define function char_index();
@define function font_cidregistry();
@define function font_encodingbytes();

@define function font_map();
@define procedure set_font_map();


@define function hyphen_char();
@define function skew_char();
@define procedure set_hyphen_char();
@define procedure set_skew_char();
@define function char_exists();

@define function char_used();
@define function char_name();
@define function char_width();
@define function char_height();
@define function char_depth();
@define function char_italic();
@define function char_tag();
@define procedure set_char_tag();
@define function char_remainder();

@define function char_info_short();

@define function has_packet();
@define procedure do_vf_packet();
@define function expand_font_name();
@define function auto_expand_font();
@define procedure vf_expand_local_fonts();
@define function letter_space_font();
@define function read_font_info();

@define function get_tag_code();
@define function get_lp_code();
@define function get_rp_code();
@define function get_ef_code();
@define procedure set_tag_code();
@define procedure set_lp_code();
@define procedure set_rp_code();
@define procedure set_ef_code();

@define function test_no_ligatures();
@define procedure set_no_ligatures();

@define function get_kern();
@define function charkern();

{ functions from mapfile.c }
@define function hasfmentry();
@define procedure checkextfm();
@define procedure pdfmapfile();
@define procedure pdfmapline();
@define procedure pdf_init_map_file();

@define procedure writefontstuff;

{functions from filename.c }
@define procedure pack_job_name();
@define procedure prompt_file_name();
@define procedure scan_file_name;
@define function make_name_string;
@define procedure print_file_name();

{ functions from utils/utils.c }
@define procedure escapehex();
@define procedure escapename();
@define procedure escapestring();
@define function ext_xn_over_d();
@define procedure getcreationdate;
@define function get_resname_prefix;
@define function makecstring();

@define procedure append_string();
@define procedure matchstrings();
@define procedure libpdffinish;
@define procedure makepdftexbanner;
@define procedure printcreationdate;
@define procedure printmoddate;
@define procedure print_ID();
@define procedure set_job_id();
@define procedure unescapehex();
@define procedure write_stream_length();
@define procedure removepdffile;
@define procedure garbagewarning;
@define function newcolorstack();
@define function colorstackset();
@define function colorstackpush();
@define function colorstackpop();
@define function colorstackcurrent();
@define function colorstackused;
@define function colorstackskippagestart();
@define procedure checkpdfsave();
@define procedure checkpdfrestore();
@define procedure pdfshipoutbegin();
@define procedure pdfshipoutend();
@define procedure pdfsetmatrix();
@define procedure matrixtransformpoint();
@define procedure matrixtransformrect();
@define function matrixused;
@define procedure matrixrecalculate();
@define function getllx;
@define function getlly;
@define function geturx;
@define function getury;

{functions from pdf/pagetree.c }
@define function pdf_do_page_divert();
@define procedure pdf_do_page_undivert();
@define function output_pages_tree;

{ functions from pdf/pdfpage.c }
@define procedure pdf_place_rule();
@define procedure pdf_place_glyph();
@define procedure pdf_place_form();
@define procedure pdf_goto_pagemode;
@define procedure pdf_page_init;
@define procedure pdf_set_pos();
@define procedure pdf_end_string_nl;
@define procedure pdf_print_charwidth();

{functions from texpdf.c }

@define procedure pdf_print_char();
@define procedure pdf_print();
@define procedure pdf_print_int();
@define procedure pdf_print_real();
@define procedure pdf_print_str();

{functions from textoken.c }

@define function get_next;
@define function scan_keyword();
@define procedure scan_direction;
@define function active_to_cs();

{ functions from vfpacket.c }
@define function new_vf_packet();
@define function packet_byte;
@define procedure start_packet();
@define procedure store_packet();

{ functions from writefont.c }
@define procedure do_pdf_font();

{ functions from image/writeimg.c }
@define function check_image_b();
@define function check_image_c();
@define function check_image_i();
@define function epdf_xsize();
@define function epdf_ysize();
@define function epdf_orig_x();
@define function epdf_orig_y();
@define function image_pages();
@define function image_colordepth();
@define function image_index();
@define function image_width();
@define function image_height();
@define function image_depth();
@define function image_objnum();
@define function is_pdf_image();
@define function is_png_image();
@define function read_image();
@define procedure update_image_procset();
@define procedure write_image();
@define procedure scale_image();
@define procedure set_image_dimensions();
@define procedure out_image();

@define procedure dumpimagemeta;
@define procedure undumpimagemeta();

{ functions from lua/limglib.c }

{ functions from writet3.c }
@define function get_pk_char_width();

{ functions from writezip.c }
@define procedure write_zip();

{ functions from avlstuff.c }
@define procedure avl_put_obj();
@define function avl_find_obj();

{ functions from tounicode.c }
@define procedure def_tounicode();

{ functions from luatex.web }
@define function auto_expand_vf();

{ end of luatex.defines }

{texmf.defines}

@define type two_halves;
@define type four_quarters;

@define function input_ln ();
@define function is_new_source ();
@define function get_job_name ();
@define function make_full_name_string;

@define procedure seconds_and_micros ();
@define function ocp_open_in ();
@define function kpse_in_name_ok ();
@define function kpse_out_name_ok ();

@define function w_open_in ();
@define function w_open_out ();

@define procedure dump_hh ();
@define procedure dump_int ();
@define procedure dump_things ();
@define procedure dump_wd ();

@define procedure undump_hh ();
@define procedure undump_int ();
@define procedure undump_qqqq ();
@define procedure undump_things ();
@define procedure undump_checked_things ();
@define procedure undump_upper_check_things ();
@define procedure undump_wd ();
@define procedure w_close ();

{common.defines}

@define type memory_word; {for gftodvi, TeX, and Metafont}

@define function a_open_in ();
@define procedure a_close ();
@define procedure b_close ();
@define function a_open_out ();
@define function b_open_out ();

@define procedure write_dvi ();
@define procedure write_pdf ();
@define procedure write_ln ();

@define procedure recorder_change_filename ();

{ functions from the synctex controller in synctex.c }

@define procedure synctex_init_command;
@define procedure synctex_start_input;
@define procedure synctex_terminate();
@define procedure synctex_sheet();
@define procedure synctex_teehs;
@define procedure synctex_vlist();
@define procedure synctex_tsilv();
@define procedure synctex_void_vlist();
@define procedure synctex_hlist();
@define procedure synctex_tsilh();
@define procedure synctex_void_hlist();
@define procedure synctex_math();
@define procedure synctex_kern();
@define procedure synctex_char();
@define procedure synctex_node();
@define procedure synctex_current;
@define procedure synctex_horizontal_rule_or_glue();

{math stuff}

@define procedure initialize_math;
@define procedure show_math_node();

@define procedure scan_extdef_math_code();
@define procedure scan_extdef_del_code();

@define function fam_fnt();
@define procedure def_fam_fnt();
@define procedure dump_math_data;
@define procedure undump_math_data;
@define procedure unsave_math_data();

@define const ord_noad_type;
@define const op_noad_type_normal;
@define const op_noad_type_limits;
@define const op_noad_type_no_limits;
@define const bin_noad_type;
@define const rel_noad_type;
@define const open_noad_type;
@define const close_noad_type;
@define const punct_noad_type;
@define const inner_noad_type;
@define const under_noad_type;
@define const over_noad_type;
@define const accent_noad;
@define const vcenter_noad;

@define const left_noad_side   ;
@define const middle_noad_side ;
@define const right_noad_side  ;

@define procedure finish_display_alignment();
@define function new_sub_box();
@define function math_vcenter_group();
@define procedure close_math_group();
@define procedure set_math_char();
@define function new_style();
@define const display_style;
@define const text_style;
@define const script_style;
@define const script_script_style;
@define const cramped_display_style;
@define const cramped_text_style;
@define const cramped_script_style;
@define const cramped_script_script_style;

@define procedure def_math_param();
@define procedure print_math_param();
@define function get_math_param();
@define procedure math_char_in_text();


@define const math_param_quad;
@define const math_param_axis;
@define const math_param_operator_size;
@define const math_param_overbar_kern;
@define const math_param_overbar_rule;
@define const math_param_overbar_vgap;
@define const math_param_underbar_kern;
@define const math_param_underbar_rule;
@define const math_param_underbar_vgap;
@define const math_param_radical_kern;
@define const math_param_radical_rule;
@define const math_param_radical_vgap;
@define const math_param_radical_degree_before;
@define const math_param_radical_degree_after;
@define const math_param_radical_degree_raise;
@define const math_param_stack_vgap;
@define const math_param_stack_num_up;
@define const math_param_stack_denom_down;
@define const math_param_fraction_rule;
@define const math_param_fraction_num_vgap;
@define const math_param_fraction_num_up;
@define const math_param_fraction_denom_vgap;
@define const math_param_fraction_denom_down;
@define const math_param_fraction_del_size;
@define const math_param_limit_above_vgap;
@define const math_param_limit_above_bgap;
@define const math_param_limit_above_kern;
@define const math_param_limit_below_vgap;
@define const math_param_limit_below_bgap;
@define const math_param_limit_below_kern;
@define const math_param_under_delimiter_vgap;
@define const math_param_under_delimiter_bgap;
@define const math_param_over_delimiter_vgap;
@define const math_param_over_delimiter_bgap;
@define const math_param_sub_shift_drop;
@define const math_param_sup_shift_drop;
@define const math_param_sub_shift_down;
@define const math_param_sub_sup_shift_down;
@define const math_param_sub_top_max;
@define const math_param_sup_shift_up;
@define const math_param_sup_bottom_min;
@define const math_param_sup_sub_bottom_max;
@define const math_param_subsup_vgap;
@define const math_param_space_after_script;
@define const math_param_connector_overlap_min;
@define const math_param_first_mu_glue;
@define const math_param_ord_ord_spacing;
@define const math_param_ord_op_spacing;
@define const math_param_ord_bin_spacing;
@define const math_param_ord_rel_spacing;
@define const math_param_ord_open_spacing;
@define const math_param_ord_close_spacing;
@define const math_param_ord_punct_spacing;
@define const math_param_ord_inner_spacing;
@define const math_param_op_ord_spacing;
@define const math_param_op_op_spacing;
@define const math_param_op_bin_spacing;
@define const math_param_op_rel_spacing;
@define const math_param_op_open_spacing;
@define const math_param_op_close_spacing;
@define const math_param_op_punct_spacing;
@define const math_param_op_inner_spacing;
@define const math_param_bin_ord_spacing;
@define const math_param_bin_op_spacing;
@define const math_param_bin_bin_spacing;
@define const math_param_bin_rel_spacing;
@define const math_param_bin_open_spacing;
@define const math_param_bin_close_spacing;
@define const math_param_bin_punct_spacing;
@define const math_param_bin_inner_spacing;
@define const math_param_rel_ord_spacing;
@define const math_param_rel_op_spacing;
@define const math_param_rel_bin_spacing;
@define const math_param_rel_rel_spacing;
@define const math_param_rel_open_spacing;
@define const math_param_rel_close_spacing;
@define const math_param_rel_punct_spacing;
@define const math_param_rel_inner_spacing;
@define const math_param_open_ord_spacing;
@define const math_param_open_op_spacing;
@define const math_param_open_bin_spacing;
@define const math_param_open_rel_spacing;
@define const math_param_open_open_spacing;
@define const math_param_open_close_spacing;
@define const math_param_open_punct_spacing;
@define const math_param_open_inner_spacing;
@define const math_param_close_ord_spacing;
@define const math_param_close_op_spacing;
@define const math_param_close_bin_spacing;
@define const math_param_close_rel_spacing;
@define const math_param_close_open_spacing;
@define const math_param_close_close_spacing;
@define const math_param_close_punct_spacing;
@define const math_param_close_inner_spacing;
@define const math_param_punct_ord_spacing;
@define const math_param_punct_op_spacing;
@define const math_param_punct_bin_spacing;
@define const math_param_punct_rel_spacing;
@define const math_param_punct_open_spacing;
@define const math_param_punct_close_spacing;
@define const math_param_punct_punct_spacing;
@define const math_param_punct_inner_spacing;
@define const math_param_inner_ord_spacing;
@define const math_param_inner_op_spacing;
@define const math_param_inner_bin_spacing;
@define const math_param_inner_rel_spacing;
@define const math_param_inner_open_spacing;
@define const math_param_inner_close_spacing;
@define const math_param_inner_punct_spacing;
@define const math_param_inner_inner_spacing;


@define const hlist_node;
@define const vlist_node;
@define const rule_node;
@define const ins_node;
@define const mark_node;
@define const adjust_node;
@define const disc_node;
@define const whatsit_node;
@define const math_node;
@define const glue_node;
@define const kern_node;
@define const penalty_node;
@define const unset_node;
@define const margin_kern_node;
@define const glyph_node;
@define const align_record_node;
@define const inserting_node;
@define const split_up_node;
@define const expr_node;
@define const span_node;
@define const action_node;
@define const glue_spec_node;
@define const temp_node;
@define const align_stack_node;
@define const movement_node;
@define const if_node;
@define const shape_node;

@define const write_node_size;
@define const open_node_size;

@define procedure print_short_node_contents();
@define procedure show_node_list();

@define const zero_glue ;
@define const sfi_glue ;
@define const fil_glue ;
@define const fill_glue ;
@define const ss_glue ;
@define const fil_neg_glue ;
@define const page_ins_head ;
@define const contrib_head ;
@define const page_head ;
@define const temp_head ;
@define const hold_head ;
@define const adjust_head ;
@define const pre_adjust_head ;
@define const align_head ;
@define const end_span ;


@define const tex_command;
@define const etex_command;
@define const aleph_command;
@define const pdftex_command;
@define const luatex_command;

@define procedure primitive_tex();
@define procedure primitive_etex();
@define procedure primitive_aleph();
@define procedure primitive_omega();
@define procedure primitive_pdftex();
@define procedure primitive_luatex();
@define procedure primitive_core();
@define procedure print_cmd_chr();

@define procedure init_primitives;
@define procedure ini_init_primitives;
@define procedure dump_primitives;
@define procedure undump_primitives;
@define function compute_pool_hash();

@define const undefined_primitive;
@define const hash_prime;

@define function get_prim_eq_type();
@define function get_prim_equiv();
@define function prim_lookup();
@define function id_lookup();

@define procedure tex_def_font();