webbery / gqlite

graph database lite

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

syntax error

happysi opened this issue · comments

Error: syntax error, unexpected ',', expecting '}':
{ create: 'movielens', group : [ { movie: ['title', 'genres'] }, { tag: ['user_id', 'tag', 'movie_id'] }, { rate: ['user_id', 'rate', 'movie_id'] } ], index:'tag'};

Because each group may have same name of properties, we changed index grammar but README is old.
The latest grammar can be write as follows:

{
    create: 'movielens',
    group: [
        {movie: ['title', 'genres']},
        {tag: ['user_id', 'tag', 'movie_id'], index: ['tag']},
        {rate: ['user_id', 'rate', 'movie_id']}
    ]
};

index should be write in each group.

In gql.y, add index keyword after group seems not implement now:

creation: '{' KW_CREATE ':' LITERAL_STRING ',' groups '}'
            {
              GCreateStmt* createStmt = new GCreateStmt($4, $6);
              free($4);
              $$ = MakeNode(NodeType::CreationStatement, createStmt, nullptr);
              stm._errorCode = ECode_Success;
            }
        | '{' KW_CREATE ':' LITERAL_STRING ',' KW_INDEX ':' call_expr '}'
              {
                free($4);
              }
        ;

But group grammar has changed and you can add index to each group.