private static List<ReferenceNode> parse(Reader reader) throws ParseException {
        List<ReferenceNode> lst;
        try {
            lst = new RankingExpressionParser(reader).featureList();
        }
        catch (TokenMgrException e) {
            ParseException t = new ParseException();
            throw (ParseException)t.initCause(e);
        }
        return lst;
    }
Parses the content of a reader object as a list of feature nodes.

@param reader A reader object that contains an feature list.
@return A list of those features named in the string.
@throws ParseException if the string could not be parsed.
searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/FeatureList.java