001 package listFW.visitor;
002
003 import listFW.*;
004
005 /**
006 * Sums a list of Numbers, including lists of any sub-types.
007 * @author Mathias Ricken - Copyright 2008 - All rights reserved.
008 */
009 public class SumNumList implements IListAlgo<Number,Number,Object> {
010
011 public Number emptyCase(IMTList<? extends Number> host, Object ... inp) {
012 return 0;
013 }
014 public Number nonEmptyCase(INEList<? extends Number> host, Object ... inp) {
015 return host.getFirst().doubleValue() + host.getRest().execute(this).doubleValue();
016 }
017 }