Meaning of keyword category list in src/backend/parser/gram.y

Started by soroosh sardariover 12 years ago3 messages
#1soroosh sardari
soroosh.sardari@gmail.com

Hi

I'm trying to add a new constraint to column constraint.
I add a new keyword ro kwlist.h and gram.y, and also edit ColConstraintElem.

The problem is i don't know what is "Keyword category lists" at the end of
gram.y.
when I added the new keyword in "unreserved_keyword", shift/reduce and
reduce/reduce conflicts appear in bison outputs.

any idea about this problem and meaning of "Keyword category lists" is
appreciated.

Cheers
Soroosh

#2Amit Kapila
amit.kapila@huawei.com
In reply to: soroosh sardari (#1)
Re: Meaning of keyword category list in src/backend/parser/gram.y

On Sunday, May 05, 2013 1:03 PM soroosh sardari wrote:

Hi
I'm trying to add a new constraint to column constraint.
I add a new keyword ro kwlist.h and gram.y, and also edit

ColConstraintElem.

The problem is i don't know what is "Keyword category lists" at the end of

gram.y.

Keyword category lists are to distinguish different type of keywords.
For example, if you add keyword in reserved_keyword, then you cannot use
that as variable in SQL where as if you put in unreserved_keyword, then you
can use it.

when I added the new keyword in "unreserved_keyword", shift/reduce and

reduce/reduce conflicts appear in bison outputs.

any idea about this problem and meaning of  "Keyword category lists" is

appreciated.

This means the grammar syntax you have defined for ColConstraintElem
conflicts with some already existing definition. shift/reduce conflicts can
occur due to your changes in ColConstraintElem definition. I suggest first
you can try with minimal/dummy changes in ColConstraintElem and once it
passes then you can try with your actual changes to see what part of changes
cause conflicts.

With Regards,
Amit Kapila.

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#3soroosh sardari
soroosh.sardari@gmail.com
In reply to: soroosh sardari (#1)
Re: Meaning of keyword category list in src/backend/parser/gram.y

Dear Amit

yes, my new constrains must not be name of variable.
I moved new keyword to reserved keyword.
Problem solved :D

Regards
Soroosh

On Mon, May 6, 2013 at 10:17 AM, Amit Kapila <amit.kapila@huawei.com> wrote:

Show quoted text

On Sunday, May 05, 2013 1:03 PM soroosh sardari wrote:

Hi
I'm trying to add a new constraint to column constraint.
I add a new keyword ro kwlist.h and gram.y, and also edit

ColConstraintElem.

The problem is i don't know what is "Keyword category lists" at the end

of
gram.y.

Keyword category lists are to distinguish different type of keywords.
For example, if you add keyword in reserved_keyword, then you cannot use
that as variable in SQL where as if you put in unreserved_keyword, then you
can use it.

when I added the new keyword in "unreserved_keyword", shift/reduce and

reduce/reduce conflicts appear in bison outputs.

any idea about this problem and meaning of "Keyword category lists" is

appreciated.

This means the grammar syntax you have defined for ColConstraintElem
conflicts with some already existing definition. shift/reduce conflicts can
occur due to your changes in ColConstraintElem definition. I suggest first
you can try with minimal/dummy changes in ColConstraintElem and once it
passes then you can try with your actual changes to see what part of
changes
cause conflicts.

With Regards,
Amit Kapila.

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers