"""
Base class for FeatureBuilders
"""

import sys, os
thisPath = os.path.dirname(os.path.abspath(__file__))
sys.path.append(os.path.abspath(os.path.join(thisPath,"../..")))
import Utils.Libraries.PorterStemmer as PorterStemmer
import Utils.Range as Range

class FeatureBuilder:
    """
    Multiple example builders might make use of the same features. A feature builder object can be used in
    different example builders that require the same feature set.
    """
    def __init__(self, featureSet, style=None):
        """
        @type featureSet: IdSet
        @param featureSet: feature ids
        """
        self.featureSet = featureSet # feature ids
        self.features = None # current feature vector