From 0ca042cf890e6daf4f7851b4f2603d00f1e63a38 Mon Sep 17 00:00:00 2001 From: Adam Wardynski <award@.(win7-laptop)> Date: Sat, 4 Dec 2010 11:52:20 +0100 Subject: [PATCH] Use DefaultFunction in RelativePosition - since the default value for Position is Nowhere now. Also, remove reduntant header and change stream to ostream in to_strings --- libwccl/ops/functions/position/relativeposition.cpp | 7 +++---- libwccl/ops/functions/position/relativeposition.h | 1 - 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/libwccl/ops/functions/position/relativeposition.cpp b/libwccl/ops/functions/position/relativeposition.cpp index a2e98d2..c9cf64f 100644 --- a/libwccl/ops/functions/position/relativeposition.cpp +++ b/libwccl/ops/functions/position/relativeposition.cpp @@ -7,10 +7,9 @@ namespace Wccl { RelativePosition::BaseRetValPtr RelativePosition::apply_internal( const FunExecContext &context) const { - static const Constant<Position> nowhere((Position(Position::Nowhere))); const RetValPtr& orig_pos = pos_expr_->apply(context); if(orig_pos->get_value() == Position::Nowhere) { - return nowhere.apply(context); + return detail::DefaultFunction<Position>()->apply(context); } const SentenceContext& sc = context.sentence_context(); return RetValPtr(new Position(offset_ + sc.get_rel_position(*orig_pos))); @@ -18,7 +17,7 @@ RelativePosition::BaseRetValPtr RelativePosition::apply_internal( std::string RelativePosition::to_string(const Corpus2::Tagset &tagset) const { - std::stringstream ss; + std::ostringstream ss; ss << pos_expr_->to_string(tagset); if(offset_ >= 0) { ss << " + " << offset_; @@ -30,7 +29,7 @@ std::string RelativePosition::to_string(const Corpus2::Tagset &tagset) const std::string RelativePosition::to_raw_string() const { - std::stringstream ss; + std::ostringstream ss; ss << pos_expr_->to_raw_string(); if(offset_ >= 0) { ss << " + " << offset_; diff --git a/libwccl/ops/functions/position/relativeposition.h b/libwccl/ops/functions/position/relativeposition.h index 9324d42..a29c2d0 100644 --- a/libwccl/ops/functions/position/relativeposition.h +++ b/libwccl/ops/functions/position/relativeposition.h @@ -2,7 +2,6 @@ #define LIBWCCL_OPS_FUNCTIONS_POSITION_RELATIVEPOSITION_H #include <libwccl/ops/function.h> -#include <libwccl/ops/formatters.h> #include <libwccl/values/position.h> namespace Wccl { -- GitLab