diff options
Diffstat (limited to 'kexi/3rdparty/kexisql3/src/parse.y')
-rw-r--r-- | kexi/3rdparty/kexisql3/src/parse.y | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/kexi/3rdparty/kexisql3/src/parse.y b/kexi/3rdparty/kexisql3/src/parse.y index b92d2276..c591c99d 100644 --- a/kexi/3rdparty/kexisql3/src/parse.y +++ b/kexi/3rdparty/kexisql3/src/parse.y @@ -207,12 +207,12 @@ ccons ::= COLLATE id(C). {sqlite3AddCollateType(pParse, C.z, C.n);} // %type refargs {int} refargs(A) ::= . { A = OE_Restrict * 0x010101; } -refargs(A) ::= refargs(X) refarg(Y). { A = (X & Y.mask) | Y.value; } -%type refarg {struct {int value; int mask;}} -refarg(A) ::= MATCH nm. { A.value = 0; A.mask = 0x000000; } -refarg(A) ::= ON DELETE refact(X). { A.value = X; A.mask = 0x0000ff; } -refarg(A) ::= ON UPDATE refact(X). { A.value = X<<8; A.mask = 0x00ff00; } -refarg(A) ::= ON INSERT refact(X). { A.value = X<<16; A.mask = 0xff0000; } +refargs(A) ::= refargs(X) refarg(Y). { A = (X & Y.tqmask) | Y.value; } +%type refarg {struct {int value; int tqmask;}} +refarg(A) ::= MATCH nm. { A.value = 0; A.tqmask = 0x000000; } +refarg(A) ::= ON DELETE refact(X). { A.value = X; A.tqmask = 0x0000ff; } +refarg(A) ::= ON UPDATE refact(X). { A.value = X<<8; A.tqmask = 0x00ff00; } +refarg(A) ::= ON INSERT refact(X). { A.value = X<<16; A.tqmask = 0xff0000; } %type refact {int} refact(A) ::= SET NULL. { A = OE_SetNull; } refact(A) ::= SET DEFAULT. { A = OE_SetDflt; } @@ -398,7 +398,7 @@ seltablist(A) ::= stl_prefix(X) LP seltablist_paren(S) RP } // A seltablist_paren nonterminal represents anything in a FROM that -// is contained inside parentheses. This can be either a subquery or +// is contained inside tqparentheses. This can be either a subquery or // a grouping of table and subqueries. // %type seltablist_paren {Select*} |