From 2586bf26f191a9b57d5f161993c1667b0be90439 Mon Sep 17 00:00:00 2001 From: Adam Wardynski <award@.(B-4.4.46a)> Date: Fri, 26 Nov 2010 19:29:32 +0100 Subject: [PATCH] Adding Token access via Position object to SentenceContext. --- libwccl/sentencecontext.h | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/libwccl/sentencecontext.h b/libwccl/sentencecontext.h index fc69166..6ff68a3 100644 --- a/libwccl/sentencecontext.h +++ b/libwccl/sentencecontext.h @@ -74,24 +74,34 @@ public: /// Token access convenience function - const. /// Will return NULL if the passed position is not valid in this Sentence - const Corpus2::Token* at(int position) const { + const Corpus2::Token* at(int abs_pos) const { if (is_current_inside()) { - return get_sentence()[position]; + return get_sentence()[abs_pos]; } else { return NULL; } } + /// Token access const function overload that takes a Position object + const Corpus2::Token* at(const Position& position) const { + return at(get_abs_position(position)); + } + /// Token access convenience function. /// Will return NULL if the passed position is not valid in this Sentence - Corpus2::Token* at(int position) { + Corpus2::Token* at(int abs_pos) { if (is_current_inside()) { - return get_sentence()[position]; + return get_sentence()[abs_pos]; } else { return NULL; } } + /// Token access function overload that takes a Position object + Corpus2::Token* at(const Position& position) { + return at(get_abs_position(position)); + } + /// Current token access shorthand, const. @see at const Corpus2::Token* current() const { return at(position_); -- GitLab