001 package org.maltparser.core.feature.function;
002
003 import org.maltparser.core.exception.MaltChainedException;
004 /**
005 *
006 *
007 * @author Johan Hall
008 */
009 public interface Function {
010 /**
011 * Initialize the feature function
012 *
013 * @param arguments an array of arguments with the type returned by getParameterTypes()
014 * @throws MaltChainedException
015 */
016 public void initialize(Object[] arguments) throws MaltChainedException;
017 /**
018 * Returns an array of class types used by the feature extraction system to invoke initialize with
019 * correct arguments.
020 *
021 * @return an array of class types
022 */
023 public Class<?>[] getParameterTypes();
024 /**
025 * Cause the feature function to update the feature value.
026 *
027 * @throws MaltChainedException
028 */
029 public void update() throws MaltChainedException;
030 }