From 5cb9c82a370300c100c24eaaf94c5cdaba91ef5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20K=C4=99dzia?= <pawel.kedzia@pwr.wroc.pl> Date: Thu, 21 Apr 2011 23:10:24 +0200 Subject: [PATCH] Added oneof() operator to the grammar --- libwccl/parser/grammar.g | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/libwccl/parser/grammar.g b/libwccl/parser/grammar.g index f9e9f5f..87f0574 100644 --- a/libwccl/parser/grammar.g +++ b/libwccl/parser/grammar.g @@ -2085,6 +2085,19 @@ match_cond_text } ; +// Match condition - oneof(variant1(v1), variant(v2), ...) +// Returns boost::shared_ptr<OneOf> +match_cond_oneof + [const Corpus2::Tagset& tagset, Variables& vars] + returns [boost::shared_ptr<OneOf> onf] +{ + boost::shared_ptr<std::vector<ConjConditions> > variants; +} + : "oneof" LPAREN variants = match_variants [tagset, vars] RPAREN { + onf.reset(new OneOf(variants)); + } +; + // ---------------------------------------------------------------------------- // Match actions. Match action can be mark or unmark -- GitLab