summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/hitexdir/hiparser.y
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/web2c/hitexdir/hiparser.y')
-rw-r--r--Build/source/texk/web2c/hitexdir/hiparser.y434
1 files changed, 217 insertions, 217 deletions
diff --git a/Build/source/texk/web2c/hitexdir/hiparser.y b/Build/source/texk/web2c/hitexdir/hiparser.y
index b3f1b1e2a05..37c4b31b8b5 100644
--- a/Build/source/texk/web2c/hitexdir/hiparser.y
+++ b/Build/source/texk/web2c/hitexdir/hiparser.y
@@ -1,6 +1,6 @@
- /*510:*/
+ /*512:*/
%{
- #line 10216 "format.w"
+ #line 10299 "format.w"
#include "hibasetypes.h"
#include <string.h>
@@ -10,9 +10,9 @@
#include "hiput.h"
extern char**hfont_name;
- /*356:*/
+ /*358:*/
uint32_t definition_bits[0x100/32][32]= {
- #line 7578 "format.w"
+ #line 7627 "format.w"
{0}};
#define SET_DBIT(N,K) ((N)>0xFF?1:(definition_bits[N/32][K] |= (1<<((N)&(32-1)))))
@@ -22,52 +22,52 @@ uint32_t definition_bits[0x100/32][32]= {
RNG("Definition",(D).n,max_fixed[(D).k]+1,max_ref[(D).k]);
#define REF(K,N) REF_RNG(K,N);if(!GET_DBIT(N,K)) \
QUIT("Reference %d to %s before definition",(N),definition_name[K])
- /*:356*/ /*360:*/
+ /*:358*/ /*362:*/
#define DEF_REF(D,K,M,N) DEF(D,K,M);\
if ((M)>max_default[K]) QUIT("Defining non default reference %d for %s",M,definition_name[K]); \
if ((N)>max_fixed[K]) QUIT("Defining reference %d for %s by non fixed reference %d",M,definition_name[K],N);
- /*:360*/
+ /*:362*/
extern void hset_entry(entry_t*e,uint16_t i,uint32_t size,
uint32_t xsize,char*file_name);
- /*423:*/
+ /*425:*/
#ifdef DEBUG
#define YYDEBUG 1
extern int yydebug;
#else
#define YYDEBUG 0
#endif
- /*:423*/
+ /*:425*/
extern int yylex(void);
- /*352:*/
+ /*354:*/
void hset_max(kind_t k,int n)
{
- #line 7421 "format.w"
+ #line 7470 "format.w"
DBG(DBGDEF,"Setting max %s to %d\n",definition_name[k],n);
RNG("Maximum",n,max_fixed[k]+1,MAX_REF(k));
if(n>max_ref[k])
max_ref[k]= n;
}
- /*:352*/ /*363:*/
+ /*:354*/ /*365:*/
void check_param_def(ref_t*df)
{
- #line 7727 "format.w"
+ #line 7776 "format.w"
if(df->k!=int_kind&&df->k!=dimen_kind&&df->k!=glue_kind)
QUIT("Kind %s not allowed in parameter list",definition_name[df->k]);
if(df->n<=max_fixed[df->k]||max_default[df->k]<df->n)
QUIT("Parameter %d for %s not allowed in parameter list",df->n,definition_name[df->k]);
}
- /*:363*/ /*422:*/
+ /*:365*/ /*424:*/
extern int yylineno;
int yyerror(const char*msg)
{
- #line 8803 "format.w"
+ #line 8886 "format.w"
QUIT(" in line %d %s",yylineno,msg);
return 0;
}
- /*:422*/
+ /*:424*/
%}
@@ -77,7 +77,7 @@ int yyerror(const char*msg)
%union {
- #line 10241 "format.w"
+ #line 10324 "format.w"
uint32_t u; int32_t i; char *s; float64_t f; glyph_t c;
dimen_t d;stretch_t st;xdimen_t xd;kern_t kt;
rule_t r;glue_t g;image_t x;
@@ -242,23 +242,23 @@ int yyerror(const char*msg)
/*:295*/ /*322:*/
%token DIRECTORY "directory"
%token SECTION "entry"
- /*:322*/ /*341:*/
+ /*:322*/ /*343:*/
%token DEFINITIONS "definitions"
- /*:341*/ /*349:*/
+ /*:343*/ /*351:*/
%token MAX "max"
- /*:349*/ /*358:*/
+ /*:351*/ /*360:*/
%type <rf> def_node
- /*:358*/ /*364:*/
+ /*:360*/ /*366:*/
%token PARAM "param"
%type <u> def_list
%type <l> parameters
- /*:364*/ /*373:*/
+ /*:366*/ /*375:*/
%token FONT "font"
%type <info> font font_head
- /*:373*/ /*401:*/
+ /*:375*/ /*403:*/
%token CONTENT "content"
- /*:401*/
+ /*:403*/
%%
/*5:*/
glyph:UNSIGNED REFERENCE{
@@ -447,309 +447,309 @@ txt:TXT_CC{
box_dimen:dimension dimension dimension
{
- #line 3470 "format.w"
+ #line 3472 "format.w"
$$= hput_box_dimen($1,$2,$3);};
box_shift:{
- #line 3471 "format.w"
+ #line 3473 "format.w"
$$= b000;}
|SHIFTED dimension{
- #line 3472 "format.w"
+ #line 3474 "format.w"
$$= hput_box_shift($2);};
box_glue_set:{
- #line 3474 "format.w"
+ #line 3476 "format.w"
$$= b000;}
|PLUS stretch{
- #line 3475 "format.w"
+ #line 3477 "format.w"
$$= hput_box_glue_set(+1,$2.f,$2.o);}
|MINUS stretch{
- #line 3476 "format.w"
+ #line 3478 "format.w"
$$= hput_box_glue_set(-1,$2.f,$2.o);};
box:box_dimen box_shift box_glue_set list{
- #line 3479 "format.w"
+ #line 3481 "format.w"
$$= $1 |$2 |$3;};
hbox_node:start HBOX box END{
- #line 3481 "format.w"
+ #line 3483 "format.w"
hput_tags($1,TAG(hbox_kind,$3));};
vbox_node:start VBOX box END{
- #line 3482 "format.w"
+ #line 3484 "format.w"
hput_tags($1,TAG(vbox_kind,$3));};
content_node:hbox_node |vbox_node;
/*:163*/ /*171:*/
box_flex:plus minus{
- #line 3663 "format.w"
+ #line 3665 "format.w"
hput_stretch(&($1));hput_stretch(&($2));};
xbox:box_dimen box_shift box_flex xdimen_ref list{
- #line 3664 "format.w"
+ #line 3666 "format.w"
$$= $1 |$2;}
|box_dimen box_shift box_flex xdimen_node list{
- #line 3665 "format.w"
+ #line 3667 "format.w"
$$= $1 |$2 |b100;};
box_goal:TO xdimen_ref{
- #line 3667 "format.w"
+ #line 3669 "format.w"
$$= b000;}
|ADD xdimen_ref{
- #line 3668 "format.w"
+ #line 3670 "format.w"
$$= b001;}
|TO xdimen_node{
- #line 3669 "format.w"
+ #line 3671 "format.w"
$$= b100;}
|ADD xdimen_node{
- #line 3670 "format.w"
+ #line 3672 "format.w"
$$= b101;};
hpack:box_shift box_goal list{
- #line 3672 "format.w"
+ #line 3674 "format.w"
$$= $2;};
vpack:box_shift MAX DEPTH dimension{
- #line 3673 "format.w"
+ #line 3675 "format.w"
HPUT32($4);}box_goal list{
- #line 3673 "format.w"
+ #line 3675 "format.w"
$$= $1 |$6;};
vxbox_node:start VSET xbox END{
- #line 3675 "format.w"
+ #line 3677 "format.w"
hput_tags($1,TAG(vset_kind,$3));}
|start VPACK vpack END{
- #line 3676 "format.w"
+ #line 3678 "format.w"
hput_tags($1,TAG(vpack_kind,$3));};
hxbox_node:start HSET xbox END{
- #line 3679 "format.w"
+ #line 3681 "format.w"
hput_tags($1,TAG(hset_kind,$3));}
|start HPACK hpack END{
- #line 3680 "format.w"
+ #line 3682 "format.w"
hput_tags($1,TAG(hpack_kind,$3));};
content_node:vxbox_node |hxbox_node;
/*:171*/ /*176:*/
ltype:{
- #line 3790 "format.w"
+ #line 3792 "format.w"
$$= 1;} |ALIGN{
- #line 3790 "format.w"
+ #line 3792 "format.w"
$$= 1;} |CENTER{
- #line 3790 "format.w"
+ #line 3792 "format.w"
$$= 2;} |EXPAND{
- #line 3790 "format.w"
+ #line 3792 "format.w"
$$= 3;};
leaders:glue_node ltype rule_node{
- #line 3791 "format.w"
+ #line 3793 "format.w"
if($1)$$= $2 |b100;else $$= $2;}
|glue_node ltype hbox_node{
- #line 3792 "format.w"
+ #line 3794 "format.w"
if($1)$$= $2 |b100;else $$= $2;}
|glue_node ltype vbox_node{
- #line 3793 "format.w"
+ #line 3795 "format.w"
if($1)$$= $2 |b100;else $$= $2;};
content_node:start LEADERS leaders END{
- #line 3794 "format.w"
+ #line 3796 "format.w"
hput_tags($1,TAG(leaders_kind,$3));}
/*:176*/ /*183:*/
baseline:dimension{
- #line 3900 "format.w"
+ #line 3902 "format.w"
if($1!=0)HPUT32($1);}
glue_node glue_node{
- #line 3901 "format.w"
+ #line 3903 "format.w"
$$= b000;if($1!=0)$$ |= b001;
if($3)$$ |= b100;
if($4)$$ |= b010;
};
content_node:start BASELINE baseline END
{
- #line 3906 "format.w"
+ #line 3908 "format.w"
if($3==b000)HPUT8(0);hput_tags($1,TAG(baseline_kind,$3));};
/*:183*/ /*190:*/
cc_list: |cc_list TXT_CC{
- #line 3989 "format.w"
+ #line 3991 "format.w"
hput_utf8($2);};
lig_cc:UNSIGNED{
- #line 3990 "format.w"
+ #line 3992 "format.w"
RNG("UTF-8 code",$1,0,0x1FFFFF);$$= hpos-hstart;hput_utf8($1);};
lig_cc:CHARCODE{
- #line 3991 "format.w"
+ #line 3993 "format.w"
$$= hpos-hstart;hput_utf8($1);};
ref:REFERENCE{
- #line 3992 "format.w"
+ #line 3994 "format.w"
HPUT8($1);$$= $1;};
ligature:ref{
- #line 3993 "format.w"
+ #line 3995 "format.w"
REF(font_kind,$1);}lig_cc TXT_START cc_list TXT_END
{
- #line 3994 "format.w"
+ #line 3996 "format.w"
$$.f= $1;$$.l.p= $3;$$.l.s= (hpos-hstart)-$3;
RNG("Ligature size",$$.l.s,0,255);};
content_node:start LIGATURE ligature END{
- #line 3996 "format.w"
+ #line 3998 "format.w"
hput_tags($1,hput_ligature(&($3)));};
/*:190*/ /*198:*/
replace_count:explicit{
- #line 4106 "format.w"
+ #line 4108 "format.w"
if($1){$$= 0x80;HPUT8(0x80);}else $$= 0x00;}
|explicit UNSIGNED{
- #line 4107 "format.w"
+ #line 4109 "format.w"
RNG("Replace count",$2,0,31);
$$= ($2) |(($1)?0x80:0x00);if($$!=0)HPUT8($$);};
disc:replace_count list list{
- #line 4109 "format.w"
+ #line 4111 "format.w"
$$.r= $1;$$.p= $2;$$.q= $3;
if($3.s==0){hpos= hpos-2;if($2.s==0)hpos= hpos-2;}}
|replace_count list{
- #line 4111 "format.w"
+ #line 4113 "format.w"
$$.r= $1;$$.p= $2;if($2.s==0)hpos= hpos-2;$$.q.s= 0;}
|replace_count{
- #line 4112 "format.w"
+ #line 4114 "format.w"
$$.r= $1;$$.p.s= 0;$$.q.s= 0;};
disc_node:start DISC disc END
{
- #line 4116 "format.w"
+ #line 4118 "format.w"
hput_tags($1,hput_disc(&($3)));};
content_node:disc_node;
/*:198*/ /*206:*/
par_dimen:xdimen{
- #line 4268 "format.w"
+ #line 4270 "format.w"
hput_xdimen_node(&($1));};
par:xdimen_ref param_ref list{
- #line 4269 "format.w"
+ #line 4271 "format.w"
$$= b000;}
|xdimen_ref empty_param_list non_empty_param_list list{
- #line 4270 "format.w"
+ #line 4272 "format.w"
$$= b010;}
|xdimen_ref empty_param_list list{
- #line 4271 "format.w"
+ #line 4273 "format.w"
$$= b010;}
|xdimen param_ref{
- #line 4272 "format.w"
+ #line 4274 "format.w"
hput_xdimen_node(&($1));}list{
- #line 4272 "format.w"
+ #line 4274 "format.w"
$$= b100;}
|par_dimen empty_param_list non_empty_param_list list{
- #line 4273 "format.w"
+ #line 4275 "format.w"
$$= b110;}
|par_dimen empty_param_list list{
- #line 4274 "format.w"
+ #line 4276 "format.w"
$$= b110;};
content_node:start PAR par END{
- #line 4276 "format.w"
+ #line 4278 "format.w"
hput_tags($1,TAG(par_kind,$3));};
/*:206*/ /*211:*/
math:param_ref list{
- #line 4342 "format.w"
+ #line 4344 "format.w"
$$= b000;}
|param_ref list hbox_node{
- #line 4343 "format.w"
+ #line 4345 "format.w"
$$= b001;}
|param_ref hbox_node list{
- #line 4344 "format.w"
+ #line 4346 "format.w"
$$= b010;}
|empty_param_list list{
- #line 4345 "format.w"
+ #line 4347 "format.w"
$$= b100;}
|empty_param_list list hbox_node{
- #line 4346 "format.w"
+ #line 4348 "format.w"
$$= b101;}
|empty_param_list hbox_node list{
- #line 4347 "format.w"
+ #line 4349 "format.w"
$$= b110;}
|empty_param_list non_empty_param_list list{
- #line 4348 "format.w"
+ #line 4350 "format.w"
$$= b100;}
|empty_param_list non_empty_param_list list hbox_node{
- #line 4349 "format.w"
+ #line 4351 "format.w"
$$= b101;}
|empty_param_list non_empty_param_list hbox_node list{
- #line 4350 "format.w"
+ #line 4352 "format.w"
$$= b110;};
content_node:start MATH math END{
- #line 4352 "format.w"
+ #line 4354 "format.w"
hput_tags($1,TAG(math_kind,$3));};
/*:211*/ /*216:*/
on_off:ON{
- #line 4402 "format.w"
+ #line 4404 "format.w"
$$= 1;} |OFF{
- #line 4402 "format.w"
+ #line 4404 "format.w"
$$= 0;};
math:on_off{
- #line 4403 "format.w"
+ #line 4405 "format.w"
$$= b011 |($1<<2);};
/*:216*/ /*220:*/
content_node:start ADJUST list END{
- #line 4434 "format.w"
+ #line 4436 "format.w"
hput_tags($1,TAG(adjust_kind,1));};
/*:220*/ /*224:*/
span_count:UNSIGNED{
- #line 4533 "format.w"
+ #line 4535 "format.w"
$$= hput_span_count($1);};
content_node:start ITEM content_node END{
- #line 4534 "format.w"
+ #line 4536 "format.w"
hput_tags($1,TAG(item_kind,1));};
content_node:start ITEM span_count content_node END{
- #line 4535 "format.w"
+ #line 4537 "format.w"
hput_tags($1,TAG(item_kind,$3));};
content_node:start ITEM list END{
- #line 4536 "format.w"
+ #line 4538 "format.w"
hput_tags($1,TAG(item_kind,b000));};
table:H box_goal list list{
- #line 4538 "format.w"
+ #line 4540 "format.w"
$$= $2;};
table:V box_goal list list{
- #line 4539 "format.w"
+ #line 4541 "format.w"
$$= $2 |b010;};
content_node:start TABLE table END{
- #line 4541 "format.w"
+ #line 4543 "format.w"
hput_tags($1,TAG(table_kind,$3));};
/*:224*/ /*231:*/
image_dimen:dimension dimension{
- #line 4629 "format.w"
+ #line 4631 "format.w"
$$.w= $1;$$.h= $2;} |{
- #line 4629 "format.w"
+ #line 4631 "format.w"
$$.w= $$.h= 0;};
image:UNSIGNED image_dimen plus minus{
- #line 4630 "format.w"
+ #line 4632 "format.w"
$$.w= $2.w;$$.h= $2.h;$$.p= $3;$$.m= $4;RNG("Section number",$1,3,max_section_no);$$.n= $1;};
content_node:start IMAGE image END{
- #line 4631 "format.w"
+ #line 4633 "format.w"
hput_tags($1,hput_image(&($3)));}
/*:231*/ /*241:*/
max_value:OUTLINE UNSIGNED{
- #line 4868 "format.w"
+ #line 4870 "format.w"
max_outline= $2;
RNG("max outline",max_outline,0,0xFFFF);
DBG(DBGDEF |DBGLABEL,"Setting max outline to %d\n",max_outline);
};
/*:241*/ /*248:*/
placement:TOP{
- #line 4960 "format.w"
+ #line 4962 "format.w"
$$= LABEL_TOP;} |BOT{
- #line 4960 "format.w"
+ #line 4962 "format.w"
$$= LABEL_BOT;} |MID{
- #line 4960 "format.w"
+ #line 4962 "format.w"
$$= LABEL_MID;} |{
- #line 4960 "format.w"
+ #line 4962 "format.w"
$$= LABEL_MID;};
content_node:START LABEL REFERENCE placement END
{
- #line 4962 "format.w"
+ #line 4964 "format.w"
hset_label($3,$4);}
/*:248*/ /*262:*/
content_node:start LINK REFERENCE on_off END
{
- #line 5220 "format.w"
+ #line 5222 "format.w"
hput_tags($1,hput_link($3,$4));};
/*:262*/ /*272:*/
def_node:START OUTLINE REFERENCE integer position list END{
- #line 5350 "format.w"
+ #line 5352 "format.w"
static int outline_no= -1;
$$.k= outline_kind;$$.n= $3;
@@ -759,102 +759,102 @@ def_node:START OUTLINE REFERENCE integer position list END{
};
/*:272*/ /*279:*/
stream_link:ref{
- #line 5765 "format.w"
+ #line 5767 "format.w"
REF_RNG(stream_kind,$1);} |NOREFERENCE{
- #line 5765 "format.w"
+ #line 5767 "format.w"
HPUT8(255);};
stream_split:stream_link stream_link UNSIGNED{
- #line 5766 "format.w"
+ #line 5768 "format.w"
RNG("split ratio",$3,0,1000);HPUT16($3);};
stream_info:xdimen_node UNSIGNED{
- #line 5767 "format.w"
+ #line 5769 "format.w"
RNG("magnification factor",$2,0,1000);HPUT16($2);}stream_split;
stream_type:stream_info{
- #line 5769 "format.w"
+ #line 5771 "format.w"
$$= 0;} |FIRST{
- #line 5769 "format.w"
+ #line 5771 "format.w"
$$= 1;} |LAST{
- #line 5769 "format.w"
+ #line 5771 "format.w"
$$= 2;} |TOP{
- #line 5769 "format.w"
+ #line 5771 "format.w"
$$= 3;};
stream_def_node:start STREAMDEF ref stream_type
list xdimen_node glue_node list glue_node END
{
- #line 5773 "format.w"
+ #line 5775 "format.w"
DEF($$,stream_kind,$3);hput_tags($1,TAG(stream_kind,$4 |b100));};
stream_ins_node:start STREAMDEF ref END
{
- #line 5776 "format.w"
+ #line 5778 "format.w"
RNG("Stream insertion",$3,0,max_ref[stream_kind]);hput_tags($1,TAG(stream_kind,b100));};
content_node:stream_def_node |stream_ins_node;
/*:279*/ /*284:*/
stream:empty_param_list list{
- #line 5871 "format.w"
+ #line 5873 "format.w"
$$= b010;}
|empty_param_list non_empty_param_list list{
- #line 5872 "format.w"
+ #line 5874 "format.w"
$$= b010;}
|param_ref list{
- #line 5873 "format.w"
+ #line 5875 "format.w"
$$= b000;};
content_node:start STREAM stream_ref stream END
{
- #line 5875 "format.w"
+ #line 5877 "format.w"
hput_tags($1,TAG(stream_kind,$4));};
/*:284*/ /*289:*/
page_priority:{
- #line 5978 "format.w"
+ #line 5980 "format.w"
HPUT8(1);}
|UNSIGNED{
- #line 5979 "format.w"
+ #line 5981 "format.w"
RNG("page priority",$1,0,255);HPUT8($1);};
stream_def_list: |stream_def_list stream_def_node;
page:string{
- #line 5983 "format.w"
+ #line 5985 "format.w"
hput_string($1);}page_priority glue_node dimension{
- #line 5983 "format.w"
+ #line 5985 "format.w"
HPUT32($5);}
xdimen_node xdimen_node
list stream_def_list;
/*:289*/ /*297:*/
content_node:START RANGE REFERENCE ON END{
- #line 6095 "format.w"
+ #line 6097 "format.w"
REF(page_kind,$3);hput_range($3,true);}
|START RANGE REFERENCE OFF END{
- #line 6096 "format.w"
+ #line 6098 "format.w"
REF(page_kind,$3);hput_range($3,false);};
/*:297*/ /*308:*/
hint:directory_section definition_section content_section;
/*:308*/ /*324:*/
directory_section:START DIRECTORY UNSIGNED{
- #line 6786 "format.w"
+ #line 6788 "format.w"
new_directory($3+1);new_output_buffers();}entry_list END;
entry_list: |entry_list entry;
entry:START SECTION UNSIGNED string END
{
- #line 6789 "format.w"
+ #line 6791 "format.w"
RNG("Section number",$3,3,max_section_no);hset_entry(&(dir[$3]),$3,0,0,$4);};
- /*:324*/ /*343:*/
+ /*:324*/ /*345:*/
definition_section:START DEFINITIONS{
- #line 7277 "format.w"
+ #line 7326 "format.w"
hput_definitions_start();}
max_definitions definition_list
END{
- #line 7279 "format.w"
+ #line 7328 "format.w"
hput_definitions_end();};
definition_list: |definition_list def_node;
- /*:343*/ /*351:*/
+ /*:345*/ /*353:*/
max_definitions:START MAX max_list END
{
- #line 7395 "format.w"
+ #line 7444 "format.w"
/*245:*/
if(max_ref[label_kind]>=0)
ALLOCATE(labels,max_ref[label_kind]+1,label_t);
@@ -864,7 +864,7 @@ max_definitions:START MAX max_list END
/*:266*/ /*293:*/
ALLOCATE(page_on,max_ref[page_kind]+1,int);
ALLOCATE(range_pos,2*(max_ref[range_kind]+1),range_pos_t);
- /*:293*/ /*357:*/
+ /*:293*/ /*359:*/
definition_bits[0][int_kind]= (1<<(MAX_INT_DEFAULT+1))-1;
definition_bits[0][dimen_kind]= (1<<(MAX_DIMEN_DEFAULT+1))-1;
definition_bits[0][xdimen_kind]= (1<<(MAX_XDIMEN_DEFAULT+1))-1;
@@ -873,239 +873,239 @@ max_definitions:START MAX max_list END
definition_bits[0][page_kind]= (1<<(MAX_PAGE_DEFAULT+1))-1;
definition_bits[0][stream_kind]= (1<<(MAX_STREAM_DEFAULT+1))-1;
definition_bits[0][range_kind]= (1<<(MAX_RANGE_DEFAULT+1))-1;
- /*:357*/ /*372:*/
+ /*:359*/ /*374:*/
ALLOCATE(hfont_name,max_ref[font_kind]+1,char*);
- /*:372*/hput_max_definitions();};
+ /*:374*/hput_max_definitions();};
max_list: |max_list START max_value END;
max_value:FONT UNSIGNED{
- #line 7399 "format.w"
+ #line 7448 "format.w"
hset_max(font_kind,$2);}
|INTEGER UNSIGNED{
- #line 7400 "format.w"
+ #line 7449 "format.w"
hset_max(int_kind,$2);}
|DIMEN UNSIGNED{
- #line 7401 "format.w"
+ #line 7450 "format.w"
hset_max(dimen_kind,$2);}
|LIGATURE UNSIGNED{
- #line 7402 "format.w"
+ #line 7451 "format.w"
hset_max(ligature_kind,$2);}
|DISC UNSIGNED{
- #line 7403 "format.w"
+ #line 7452 "format.w"
hset_max(disc_kind,$2);}
|GLUE UNSIGNED{
- #line 7404 "format.w"
+ #line 7453 "format.w"
hset_max(glue_kind,$2);}
|LANGUAGE UNSIGNED{
- #line 7405 "format.w"
+ #line 7454 "format.w"
hset_max(language_kind,$2);}
|RULE UNSIGNED{
- #line 7406 "format.w"
+ #line 7455 "format.w"
hset_max(rule_kind,$2);}
|IMAGE UNSIGNED{
- #line 7407 "format.w"
+ #line 7456 "format.w"
hset_max(image_kind,$2);}
|LEADERS UNSIGNED{
- #line 7408 "format.w"
+ #line 7457 "format.w"
hset_max(leaders_kind,$2);}
|BASELINE UNSIGNED{
- #line 7409 "format.w"
+ #line 7458 "format.w"
hset_max(baseline_kind,$2);}
|XDIMEN UNSIGNED{
- #line 7410 "format.w"
+ #line 7459 "format.w"
hset_max(xdimen_kind,$2);}
|PARAM UNSIGNED{
- #line 7411 "format.w"
+ #line 7460 "format.w"
hset_max(param_kind,$2);}
|STREAMDEF UNSIGNED{
- #line 7412 "format.w"
+ #line 7461 "format.w"
hset_max(stream_kind,$2);}
|PAGE UNSIGNED{
- #line 7413 "format.w"
+ #line 7462 "format.w"
hset_max(page_kind,$2);}
|RANGE UNSIGNED{
- #line 7414 "format.w"
+ #line 7463 "format.w"
hset_max(range_kind,$2);}
|LABEL UNSIGNED{
- #line 7415 "format.w"
+ #line 7464 "format.w"
hset_max(label_kind,$2);};
- /*:351*/ /*359:*/
+ /*:353*/ /*361:*/
def_node:
start FONT ref font END{
- #line 7612 "format.w"
+ #line 7661 "format.w"
DEF($$,font_kind,$3);hput_tags($1,$4);}
|start INTEGER ref integer END{
- #line 7613 "format.w"
+ #line 7662 "format.w"
DEF($$,int_kind,$3);hput_tags($1,hput_int($4));}
|start DIMEN ref dimension END{
- #line 7614 "format.w"
+ #line 7663 "format.w"
DEF($$,dimen_kind,$3);hput_tags($1,hput_dimen($4));}
|start LANGUAGE ref string END{
- #line 7615 "format.w"
+ #line 7664 "format.w"
DEF($$,language_kind,$3);hput_string($4);hput_tags($1,TAG(language_kind,0));}
|start GLUE ref glue END{
- #line 7616 "format.w"
+ #line 7665 "format.w"
DEF($$,glue_kind,$3);hput_tags($1,hput_glue(&($4)));}
|start XDIMEN ref xdimen END{
- #line 7617 "format.w"
+ #line 7666 "format.w"
DEF($$,xdimen_kind,$3);hput_tags($1,hput_xdimen(&($4)));}
|start RULE ref rule END{
- #line 7618 "format.w"
+ #line 7667 "format.w"
DEF($$,rule_kind,$3);hput_tags($1,hput_rule(&($4)));}
|start LEADERS ref leaders END{
- #line 7619 "format.w"
+ #line 7668 "format.w"
DEF($$,leaders_kind,$3);hput_tags($1,TAG(leaders_kind,$4));}
|start BASELINE ref baseline END{
- #line 7620 "format.w"
+ #line 7669 "format.w"
DEF($$,baseline_kind,$3);hput_tags($1,TAG(baseline_kind,$4));}
|start LIGATURE ref ligature END{
- #line 7621 "format.w"
+ #line 7670 "format.w"
DEF($$,ligature_kind,$3);hput_tags($1,hput_ligature(&($4)));}
|start DISC ref disc END{
- #line 7622 "format.w"
+ #line 7671 "format.w"
DEF($$,disc_kind,$3);hput_tags($1,hput_disc(&($4)));}
|start IMAGE ref image END{
- #line 7623 "format.w"
+ #line 7672 "format.w"
DEF($$,image_kind,$3);hput_tags($1,hput_image(&($4)));}
|start PARAM ref parameters END{
- #line 7624 "format.w"
+ #line 7673 "format.w"
DEF($$,param_kind,$3);hput_tags($1,hput_list($1+2,&($4)));}
|start PAGE ref page END{
- #line 7625 "format.w"
+ #line 7674 "format.w"
DEF($$,page_kind,$3);hput_tags($1,TAG(page_kind,0));};
- /*:359*/ /*361:*/
+ /*:361*/ /*363:*/
def_node:
start INTEGER ref ref END{
- #line 7644 "format.w"
+ #line 7693 "format.w"
DEF_REF($$,int_kind,$3,$4);hput_tags($1,TAG(int_kind,0));}
|start DIMEN ref ref END{
- #line 7645 "format.w"
+ #line 7694 "format.w"
DEF_REF($$,dimen_kind,$3,$4);hput_tags($1,TAG(dimen_kind,0));}
|start GLUE ref ref END{
- #line 7646 "format.w"
+ #line 7695 "format.w"
DEF_REF($$,glue_kind,$3,$4);hput_tags($1,TAG(glue_kind,0));};
- /*:361*/ /*366:*/
+ /*:363*/ /*368:*/
def_list:position
|def_list def_node{
- #line 7760 "format.w"
+ #line 7809 "format.w"
check_param_def(&($2));};
parameters:estimate def_list{
- #line 7761 "format.w"
+ #line 7810 "format.w"
$$.p= $2;$$.k= param_kind;$$.s= (hpos-hstart)-$2;};
- /*:366*/ /*367:*/
+ /*:368*/ /*369:*/
empty_param_list:position{
- #line 7782 "format.w"
+ #line 7831 "format.w"
HPUTX(2);hpos++;hput_tags($1,TAG(param_kind,1));};
non_empty_param_list:start PARAM{
- #line 7783 "format.w"
+ #line 7832 "format.w"
hpos= hpos-2;}parameters END
{
- #line 7784 "format.w"
+ #line 7833 "format.w"
hput_tags($1-2,hput_list($1-1,&($4)));};
- /*:367*/ /*375:*/
+ /*:369*/ /*377:*/
font:font_head font_param_list;
font_head:string dimension UNSIGNED UNSIGNED
{
- #line 7926 "format.w"
+ #line 7975 "format.w"
uint8_t f= $<u>0;SET_DBIT(f,font_kind);hfont_name[f]= strdup($1);$$= hput_font_head(f,hfont_name[f],$2,$3,$4);};
font_param_list:glue_node disc_node |font_param_list font_param;
font_param:
start PENALTY fref penalty END{
- #line 7931 "format.w"
+ #line 7980 "format.w"
hput_tags($1,hput_int($4));}
|start KERN fref kern END{
- #line 7932 "format.w"
+ #line 7981 "format.w"
hput_tags($1,hput_kern(&($4)));}
|start LIGATURE fref ligature END{
- #line 7933 "format.w"
+ #line 7982 "format.w"
hput_tags($1,hput_ligature(&($4)));}
|start DISC fref disc END{
- #line 7934 "format.w"
+ #line 7983 "format.w"
hput_tags($1,hput_disc(&($4)));}
|start GLUE fref glue END{
- #line 7935 "format.w"
+ #line 7984 "format.w"
hput_tags($1,hput_glue(&($4)));}
|start LANGUAGE fref string END{
- #line 7936 "format.w"
+ #line 7985 "format.w"
hput_string($4);hput_tags($1,TAG(language_kind,0));}
|start RULE fref rule END{
- #line 7937 "format.w"
+ #line 7986 "format.w"
hput_tags($1,hput_rule(&($4)));}
|start IMAGE fref image END{
- #line 7938 "format.w"
+ #line 7987 "format.w"
hput_tags($1,hput_image(&($4)));};
fref:ref{
- #line 7940 "format.w"
+ #line 7989 "format.w"
RNG("Font parameter",$1,0,MAX_FONT_PARAMS);};
- /*:375*/ /*378:*/
+ /*:377*/ /*380:*/
xdimen_ref:ref{
- #line 8013 "format.w"
+ #line 8062 "format.w"
REF(xdimen_kind,$1);};
param_ref:ref{
- #line 8014 "format.w"
+ #line 8063 "format.w"
REF(param_kind,$1);};
stream_ref:ref{
- #line 8015 "format.w"
+ #line 8064 "format.w"
REF_RNG(stream_kind,$1);};
content_node:
start PENALTY ref END{
- #line 8019 "format.w"
+ #line 8068 "format.w"
REF(penalty_kind,$3);hput_tags($1,TAG(penalty_kind,0));}
|start KERN explicit ref END
{
- #line 8021 "format.w"
+ #line 8070 "format.w"
REF(dimen_kind,$4);hput_tags($1,TAG(kern_kind,($3)?b100:b000));}
|start KERN explicit XDIMEN ref END
{
- #line 8023 "format.w"
+ #line 8072 "format.w"
REF(xdimen_kind,$5);hput_tags($1,TAG(kern_kind,($3)?b101:b001));}
|start GLUE ref END{
- #line 8024 "format.w"
+ #line 8073 "format.w"
REF(glue_kind,$3);hput_tags($1,TAG(glue_kind,0));}
|start LIGATURE ref END{
- #line 8025 "format.w"
+ #line 8074 "format.w"
REF(ligature_kind,$3);hput_tags($1,TAG(ligature_kind,0));}
|start DISC ref END{
- #line 8026 "format.w"
+ #line 8075 "format.w"
REF(disc_kind,$3);hput_tags($1,TAG(disc_kind,0));}
|start RULE ref END{
- #line 8027 "format.w"
+ #line 8076 "format.w"
REF(rule_kind,$3);hput_tags($1,TAG(rule_kind,0));}
|start IMAGE ref END{
- #line 8028 "format.w"
+ #line 8077 "format.w"
REF(image_kind,$3);hput_tags($1,TAG(image_kind,0));}
|start LEADERS ref END{
- #line 8029 "format.w"
+ #line 8078 "format.w"
REF(leaders_kind,$3);hput_tags($1,TAG(leaders_kind,0));}
|start BASELINE ref END{
- #line 8030 "format.w"
+ #line 8079 "format.w"
REF(baseline_kind,$3);hput_tags($1,TAG(baseline_kind,0));}
|start LANGUAGE REFERENCE END{
- #line 8031 "format.w"
+ #line 8080 "format.w"
REF(language_kind,$3);hput_tags($1,hput_language($3));};
glue_node:start GLUE ref END{
- #line 8033 "format.w"
+ #line 8082 "format.w"
REF(glue_kind,$3);
if($3==zero_skip_no){hpos= hpos-2;$$= false;}
else{hput_tags($1,TAG(glue_kind,0));$$= true;}};
- /*:378*/ /*403:*/
+ /*:380*/ /*405:*/
content_section:START CONTENT{
- #line 8464 "format.w"
+ #line 8513 "format.w"
hput_content_start();}content_list END
{
- #line 8465 "format.w"
+ #line 8514 "format.w"
hput_content_end();hput_range_defs();hput_label_defs();};
- /*:403*/
+ /*:405*/
%%
- /*:510*/
+ /*:512*/