1 33 package net.sf.jga.parser; 34 35 import net.sf.jga.fn.UnaryFunctor; 36 import net.sf.jga.fn.adaptor.Identity; 37 38 44 45 public class UnaryFunctorRef<T,R> implements FunctorRef<UnaryFunctor<T,R>> { 46 private UnaryFunctor<T,R> _uf; 47 private Class [] _argType = new Class [1]; 48 private String [] _argName = new String [1]; 49 private Class _returnType; 50 51 public UnaryFunctorRef (UnaryFunctor<T,R> uf, Class argType, String name, Class returnType){ 52 _uf = uf; 53 _argType[0] = argType; 54 _returnType = returnType; 55 _argName[0] = name; 56 } 57 58 public UnaryFunctor<T,R> getFunctor() { return _uf; } 60 public Class getReturnType() { return _returnType; } 61 public int getNumberArgs() { return _argType.length; } 62 public Class getArgType(int i) { return _argType[i]; } 63 public String getArgName(int i) { return _argName[i]; } 64 public int getReferenceType() { return _uf instanceof Identity ? IDENTITY : UNARY_FN; } 65 66 public String toString() { return _uf.toString()+":"+getReturnType().getName(); } 68 } 69 | Popular Tags |