aboutsummaryrefslogtreecommitdiffstats
path: root/fsa
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-05-08 11:09:21 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2017-05-08 11:09:21 +0200
commit47d62415e0fe849a92e81c318ad2030d88fd69d5 (patch)
tree66c954509734a6dcd935f104d772e5a4e3f53c28 /fsa
parentb374b62e10cd3e97a74234117546ba95d29403c1 (diff)
Clean up what you have allocated.
Diffstat (limited to 'fsa')
-rw-r--r--fsa/src/vespa/fsa/segmenter.cpp24
-rw-r--r--fsa/src/vespa/fsa/segmenter.h19
2 files changed, 25 insertions, 18 deletions
diff --git a/fsa/src/vespa/fsa/segmenter.cpp b/fsa/src/vespa/fsa/segmenter.cpp
index 91f5a611f13..cd57b9652a5 100644
--- a/fsa/src/vespa/fsa/segmenter.cpp
+++ b/fsa/src/vespa/fsa/segmenter.cpp
@@ -12,13 +12,33 @@
#include "config.h"
#endif
-#include <stdio.h>
-
#include "segmenter.h"
namespace fsa {
+Segmenter::Segments::Segments()
+ : _text(), _segments(), _map(),
+ _segmentation(Segmenter::SEGMENTATION_METHODS,NULL)
+{}
+
+Segmenter::Segments::~Segments()
+{
+ clear();
+}
+
+void
+Segmenter::Segments::clear()
+{
+ _segments.clear();
+ _map.init(_text.size());
+ initSingles();
+ for(unsigned int i=0;i<SEGMENTATION_METHODS;i++){
+ delete _segmentation[i];
+ _segmentation[i] = nullptr;
+ }
+}
+
// {{{ Segmenter::Segments::initSingles
void Segmenter::Segments::initSingles()
diff --git a/fsa/src/vespa/fsa/segmenter.h b/fsa/src/vespa/fsa/segmenter.h
index f40f27f522b..74254639538 100644
--- a/fsa/src/vespa/fsa/segmenter.h
+++ b/fsa/src/vespa/fsa/segmenter.h
@@ -360,12 +360,8 @@ public:
unsigned int end);
public:
- /** Default constructor */
- Segments() : _text(), _segments(), _map(),
- _segmentation(Segmenter::SEGMENTATION_METHODS,NULL) {}
-
- /** Destructor */
- ~Segments() {}
+ Segments();
+ ~Segments();
/**
* @brief Set input text, and clear all results.
@@ -413,16 +409,7 @@ public:
/**
* @brief Clear all detected segments and built segmentations.
*/
- void clear()
- {
- _segments.clear();
- _map.init(_text.size());
- initSingles();
- for(unsigned int i=0;i<SEGMENTATION_METHODS;i++){
- delete _segmentation[i];
- _segmentation[i]=NULL;
- }
- }
+ void clear();
/**
* @brief Insert a detected segment.