12d2bb24f747c65578da13d5b13b82f0669690461Fredrik Roubert// © 2016 and later: Unicode, Inc. and others. 22d2bb24f747c65578da13d5b13b82f0669690461Fredrik Roubert// License & terms of use: http://www.unicode.org/copyright.html#License 37935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert/* 47935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert ******************************************************************************** 57935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Copyright (C) 2009-2010, Google, International Business Machines Corporation * 67935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * and others. All Rights Reserved. * 77935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert ******************************************************************************** 87935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 97935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertpackage com.ibm.icu.text; 107935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 117935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert/** 127935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Provide an interface for Transforms that focuses just on the transformation of the text. 137935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * APIs that take Transliterator or StringTransform, but only depend on the transformation should use this interface in the API instead. 147935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * 157935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * @author markdavis 167935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * @stable ICU 4.4 177935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 187935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 197935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 207935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertpublic interface Transform<S,D> { 217935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert /** 227935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Transform the input in some way, to be determined by the subclass. 237935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * @param source to be transformed (eg lowercased) 247935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * @return result 257935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * @stable ICU 4.4 267935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 277935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert public D transform(S source); 287935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert} 29