public void FunctionDef(FunctionDef e)
{
Type[] param = new Type[e.Count];
DoVars = new Hashtable();
for (int i = 0; i < e.Count; i++){
param[i] = (Type)e.Params[i];
}
//DescriptorInfo di = new DescriptorInfo(param);
//di.SetReturnType(e.ExpType);
//di.MethodAttributes = MethodAttributes.Static | MethodAttributes.Public;
methodb = tb.DefineMethod(e.Name, MethodAttributes.Static | MethodAttributes.Public, e.ExpType, param);
Functions.Add(e.Name, methodb);
ILGenerator ilmain = il;
il = methodb.GetILGenerator();
e.Body.Visit(this);
il.Emit(OpCodes.Ret);
il = ilmain;
}