gnats-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Changes to gnats/gnats/fconfig.y


From: Andrew J. Gray
Subject: Changes to gnats/gnats/fconfig.y
Date: Thu, 24 Oct 2002 08:45:10 -0400

Index: gnats/gnats/fconfig.y
diff -c gnats/gnats/fconfig.y:1.35 gnats/gnats/fconfig.y:1.36
*** gnats/gnats/fconfig.y:1.35  Sat Dec  8 15:21:20 2001
--- gnats/gnats/fconfig.y       Thu Oct 24 08:45:09 2002
***************
*** 7,12 ****
--- 7,13 ----
    static ChangeActions currChange;
    static FieldEdit *currEdit;
    static QueryFormat *qformat;
+   static FieldList requiredFlds;
    static InputTemplate *inputTemplate;
    static MailMessageFormat mailFormat;
    IndexDesc indexEntry;
***************
*** 55,67 ****
  %type <flist> mailAddressTries MailAddressMember
  %type <mailaddr> mailAddress
  %type <mailaddrlist> mailAddressList
  %%
  
  config                : configEnts
                | parseError
                ;
  
! configEnts    : databaseInfo fieldDecStmt optQueryList auditTrailFmt 
mailFormatList globalChangeEnts indexDescription inputEnt
                ;
  
  databaseInfo  : DATABASEINFOTOK '{' databaseInfoList '}'
--- 56,69 ----
  %type <flist> mailAddressTries MailAddressMember
  %type <mailaddr> mailAddress
  %type <mailaddrlist> mailAddressList
+ %type <flist> requiredFieldsList
  %%
  
  config                : configEnts
                | parseError
                ;
  
! configEnts    : databaseInfo fieldDecStmt optQueryList auditTrailFmt 
mailFormatList globalChangeEnts indexDescription inputDescription
                ;
  
  databaseInfo  : DATABASEINFOTOK '{' databaseInfoList '}'
***************
*** 637,646 ****
                }
                ;
  
! inputEnt      : INPUTTOK '{' inputFields '}' {
!                   setInputTemplate (databaseBeingDefined, $3);
!               }
                | INPUTTOK '{' parseError '}'
                ;
  
  inputFields   : FIELDSTOK '{' inputFieldsList '}' {
--- 639,669 ----
                }
                ;
  
! inputDescription: INPUTTOK '{' inputEnt '}'
                | INPUTTOK '{' parseError '}'
+ 
+ inputEnt      : inputFields requiredFields {
+                   setInputTemplate (databaseBeingDefined, $1);
+               }
+                 ;
+ 
+ requiredFields  :/* empty */
+                 | REQUIRETOK '{' requiredFieldsList '}' {
+                   setRequiredInputFields (databaseBeingDefined, requiredFlds);
+                 }
+                 | REQUIRETOK '{' parseError '}' {
+                     freeFieldList (requiredFlds);
+                     requiredFlds = NULL;
+                 }
+               ;
+ 
+ requiredFieldsList: FieldListMember {
+                   requiredFlds = $1;
+                 }
+                 | requiredFieldsList FieldListMember {
+                     $1->next = $2;
+                     $$ = $2;
+                 }
                ;
  
  inputFields   : FIELDSTOK '{' inputFieldsList '}' {




reply via email to

[Prev in Thread] Current Thread [Next in Thread]