Package org.apache.poi.ss.formula.functions

Examples of org.apache.poi.ss.formula.functions.FreeRefFunction


    public void testAddNameX(){
        InternalWorkbook wb = TestHSSFWorkbook.getInternalWorkbook(new HSSFWorkbook());
        assertNotNull(wb.getNameXPtg("ISODD", UDFFinder.DEFAULT));

        FreeRefFunction NotImplemented = new FreeRefFunction() {
            public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec) {
                throw new RuntimeException("not implemented");
            }
        };
View Full Code Here


        super(usedToolPacks);
        _funcMap = new HashMap<Integer, String>();
    }

    public FreeRefFunction findFunction(String name) {
        FreeRefFunction func = super.findFunction(name);
        if (func != null) {
            int idx = getFunctionIndex(name);
            _funcMap.put(idx, name);
        }
        return func;
View Full Code Here

        Iterator<String> keysIt = xlsMacroList.keySet().iterator();
        int x = 0;
        while (keysIt.hasNext()) {
            String name = keysIt.next();
            FreeRefFunction function = xlsMacroList.get(name);
            names[x] = name;
            functions[x] = function;
        }

        UDFFinder udff1 = new DefaultUDFFinder(names, functions);
View Full Code Here

        return m;
    }

    private static void r(Map<String, FreeRefFunction> m, String functionName, FreeRefFunction pFunc) {
        FreeRefFunction func = pFunc == null ? new NotImplemented(functionName) : pFunc;
        m.put(functionName, func);
    }
View Full Code Here

     */
    public static Collection<String> getSupportedFunctionNames(){
        AnalysisToolPak inst = (AnalysisToolPak)instance;
        Collection<String> lst = new TreeSet<String>();
        for(String name : inst._functionsByName.keySet()){
            FreeRefFunction func = inst._functionsByName.get(name);
            if(func != null && !(func instanceof NotImplemented)){
                lst.add(name);
            }
        }
        return Collections.unmodifiableCollection(lst);
View Full Code Here

     */
    public static Collection<String> getNotSupportedFunctionNames(){
        AnalysisToolPak inst = (AnalysisToolPak)instance;
        Collection<String> lst = new TreeSet<String>();
        for(String name : inst._functionsByName.keySet()){
            FreeRefFunction func = inst._functionsByName.get(name);
            if(func != null && (func instanceof NotImplemented)){
                lst.add(name);
            }
        }
        return Collections.unmodifiableCollection(lst);
View Full Code Here

                        "Use FunctoinEval.registerFunction(String name, Function func) instead.");
            }

            throw new IllegalArgumentException(name + " is not a function from the Excel Analysis Toolpack.");
        }
        FreeRefFunction f = inst.findFunction(name);
        if(f != null && !(f instanceof NotImplemented)) {
            throw new IllegalArgumentException("POI already implememts " + name +
                    ". You cannot override POI's implementations of Excel functions");
        }
View Full Code Here

    }

    public NameXPxg getNameXPtg(String name, SheetIdentifier sheet) {
      // First, try to find it as a User Defined Function
        IndexedUDFFinder udfFinder = (IndexedUDFFinder)getUDFFinder();
        FreeRefFunction func = udfFinder.findFunction(name);
        if (func != null) {
            return new NameXPxg(null, name);
        }
       
        // Otherwise, try it as a named range
View Full Code Here

     throw new RuntimeException("Not implemented yet");
  }

  public NameXPtg getNameXPtg(String name) {
        IndexedUDFFinder udfFinder = (IndexedUDFFinder)getUDFFinder();
        FreeRefFunction func = udfFinder.findFunction(name);
    if(func == null) return null;
        else return new NameXPtg(0, udfFinder.getFunctionIndex(name));
  }
View Full Code Here

      functionName = ((FunctionNameEval) nameArg).getFunctionName();
    } else {
      throw new RuntimeException("First argument should be a NameEval, but got ("
          + nameArg.getClass().getName() + ")");
    }
    FreeRefFunction targetFunc = ec.findUserDefinedFunction(functionName);
    if (targetFunc == null) {
      throw new NotImplementedFunctionException(functionName);
    }
    int nOutGoingArgs = nIncomingArgs -1;
    ValueEval[] outGoingArgs = new ValueEval[nOutGoingArgs];
    System.arraycopy(args, 1, outGoingArgs, 0, nOutGoingArgs);
    return targetFunc.evaluate(outGoingArgs, ec);
  }
View Full Code Here

TOP

Related Classes of org.apache.poi.ss.formula.functions.FreeRefFunction

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.