From 617bf142813c24ea9602b64e55cade32bf1832ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pawe=C5=82=20K=C4=99dzia?= <pawel.kedzia@pwr.wroc.pl>
Date: Fri, 3 Dec 2010 12:40:49 +0100
Subject: [PATCH] New operator, named class

---
 libwccl/parser/grammar.g | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/libwccl/parser/grammar.g b/libwccl/parser/grammar.g
index 9628c69..bf12dd5 100644
--- a/libwccl/parser/grammar.g
+++ b/libwccl/parser/grammar.g
@@ -41,6 +41,7 @@ header {
 	#include <libwccl/ops/functions/strset/getlemmas.h>
 	
 	#include <libwccl/ops/functions/tset/getsymbols.h>
+	#include <libwccl/ops/functions/tset/getwordclass.h>
 
 	#include <libwccl/ops/functions/position/relativeposition.h>
 
@@ -488,6 +489,7 @@ symset_operator
 	: (symset_condition[tagset, vars]) => (ret = symset_condition [tagset, vars])
 	| (symset_getsymbol[tagset, vars]) => (ret = symset_getsymbol [tagset, vars])
 	| (symset_var_val  [tagset, vars]) => (ret = symset_var_val   [tagset, vars])
+	| (symset_class    [tagset, vars]) => (ret = symset_class     [tagset, vars])
 	//
 	| LPAREN ret = symset_operator [tagset, vars] RPAREN
 ;
@@ -553,6 +555,19 @@ symset_getsymbol
 		}
 ;
 
+// ----------------------------------------------------------------------------
+// Class operator.
+symset_class 
+	[const Corpus2::Tagset& tagset, Variables& vars]
+	returns [boost::shared_ptr<Function<TSet> > ret]
+{
+	boost::shared_ptr<Function<Position> > pos;
+}
+	: "class" LBRACKET pos = position_operator [tagset, vars] RBRACKET { 
+		ret.reset(new GetWordClass(pos));
+	}
+;
+
 ///////////////////////////////////////////////////////////////////////////////
 // Position operator
 // Returns boost::shared_ptr<Function<Position> >
-- 
GitLab