1 33 package net.sf.jga.parser; 34 35 import net.sf.jga.fn.Generator; 36 import net.sf.jga.fn.adaptor.Constant; 37 38 44 45 public class GeneratorRef<R> implements FunctorRef<Generator<R>> { 46 private Generator<R> _gen; 47 private Class [] _argType = new Class [0]; 48 private String [] _argName = new String [0]; 49 private Class _returnType; 50 51 public GeneratorRef (Generator<R> gen, Class returnType){ 52 _gen = gen; 53 _returnType = returnType; 54 } 55 56 57 public Generator<R> getFunctor() { return _gen; } 59 public Class getReturnType() { return _returnType; } 60 public int getNumberArgs() { return _argType.length; } 61 public Class getArgType(int i) { return _argType[i]; } 62 public String getArgName(int i) { return _argName[i]; } 63 public int getReferenceType() { return _gen instanceof Constant ? CONSTANT : GENERATOR; } 64 65 public String toString() { return _gen.toString()+":"+getReturnType().getName(); } 67 } 68 | Popular Tags |