001package org.maltparser.core.feature.function; 002 003import org.maltparser.core.exception.MaltChainedException; 004/** 005* 006* 007* @author Johan Hall 008*/ 009public 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}