Skip to content
Snippets Groups Projects
Commit 24c39c6e authored by ilor's avatar ilor
Browse files

Merge branch 'master' of nlp.pwr.wroc.pl:wccl

parents a99edd7b fe784bbd
No related merge requests found
header { header {
//don't try to add all the headers inside our namespace
// ANTLR_END_NAMESPACE
#include <libwccl/parser/ParserException.h> #include <libwccl/parser/ParserException.h>
#include <cstdio> #include <cstdio>
...@@ -48,6 +51,9 @@ header { ...@@ -48,6 +51,9 @@ header {
// //
#include <libwccl/parser/ANTLRParserResult.h> #include <libwccl/parser/ANTLRParserResult.h>
// start our namespace again
// ANTLR_BEGIN_NAMESPACE(Wccl)
} }
options { options {
...@@ -348,17 +354,11 @@ relpos ...@@ -348,17 +354,11 @@ relpos
[const Corpus2::Tagset& tagset, Wccl::Variables& vars] [const Corpus2::Tagset& tagset, Wccl::Variables& vars]
returns [boost::shared_ptr<Wccl::Function<Wccl::Position> > ret] returns [boost::shared_ptr<Wccl::Function<Wccl::Position> > ret]
{ {
int n = 0;
boost::shared_ptr<Wccl::Function<Wccl::Position> > pos; boost::shared_ptr<Wccl::Function<Wccl::Position> > pos;
} }
: "relpos" : "relpos" LPAREN pos = op_position [tagset, vars] COMMA n = number RPAREN {
LPAREN ret.reset(new Wccl::RelativePosition(pos, n));
pos = op_position [tagset, vars] ("+" | "-") ofst: UNSIGNED_INT
RPAREN {
ret.reset(new Wccl::RelativePosition(
pos,
token_ref_to_int(ofst)
)
);
} }
; ;
...@@ -598,7 +598,7 @@ op_position ...@@ -598,7 +598,7 @@ op_position
: op = position_variable [vars] : op = position_variable [vars]
| op = position_value | op = position_value
| op = relpos [tagset, vars] | op = relpos [tagset, vars]
// | op = condit_position [tagset, vars] | op = condit_position [tagset, vars]
; ;
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
...@@ -869,6 +869,7 @@ lpred_eq ...@@ -869,6 +869,7 @@ lpred_eq
} }
: "equal" LPAREN : "equal" LPAREN
( (
(position_operators [tagset, vars]) =>
( (
p1 = position_operators [tagset, vars] COMMA p1 = position_operators [tagset, vars] COMMA
p2 = position_operators [tagset, vars] { p2 = position_operators [tagset, vars] {
...@@ -960,15 +961,12 @@ condit_bool ...@@ -960,15 +961,12 @@ condit_bool
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// if (Bool, Position, Position) // if (Bool, Position, Position)
// ? Position ? Bool : 0 // ? Position ? Bool : 0
/* Not implemented yet
*/
/*
condit_position condit_position
[const Corpus2::Tagset& tagset, Wccl::Variables& vars] [const Corpus2::Tagset& tagset, Wccl::Variables& vars]
returns [boost::shared_ptr<Wccl::Function<Wccl::Position> > op] returns [boost::shared_ptr<Wccl::Function<Wccl::Position> > op]
{ {
boost::shared_ptr<Wccl::Function<Wccl::Bool> > test; boost::shared_ptr<Wccl::Function<Wccl::Bool> > test;
boost::shared_ptr<Wccl::Function<Wccl::Bool> > p_true, p_false; boost::shared_ptr<Wccl::Function<Wccl::Position> > p_true, p_false;
} }
: "if" LPAREN test = logical_predicates [tagset, vars] COMMA : "if" LPAREN test = logical_predicates [tagset, vars] COMMA
p_true = position_operators [tagset, vars] p_true = position_operators [tagset, vars]
...@@ -988,7 +986,6 @@ condit_position ...@@ -988,7 +986,6 @@ condit_position
op.reset(new Wccl::Conditional<Wccl::Position>(test, p_true)); op.reset(new Wccl::Conditional<Wccl::Position>(test, p_true));
} }
; ;
*/
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment