public FunctionDescriptor(FunctionDescriptorParams funcDescParams) { summary = funcDescParams.Summary; pathManager = funcDescParams.PathManager; Assembly = funcDescParams.Assembly; ClassName = funcDescParams.ClassName; FunctionName = funcDescParams.FunctionName; Parameters = funcDescParams.Parameters.Select( x => { x.UpdateFunctionDescriptor(this); return(x); }).ToList(); var type = funcDescParams.FunctionType; var inputParameters = new List <Tuple <string, string> >(); //Add instance parameter as one of the inputs for instance method as well as properties. if (type == FunctionType.InstanceMethod || type == FunctionType.InstanceProperty) { inputParameters.Add(Tuple.Create(UnqualifedClassName.ToLower(), UnqualifedClassName)); } if (Parameters.Any()) { inputParameters.AddRange(Parameters.Select( par => Tuple.Create(par.Name, par.DisplayTypeName))); } InputParameters = inputParameters; //Not sure why returnType for constructors are var[]..[], use UnqualifiedClassName ReturnType = (type == FunctionType.Constructor) ? UnqualifedClassName : funcDescParams.ReturnType.ToShortString(); Type = type; ReturnKeys = funcDescParams.ReturnKeys; IsVarArg = funcDescParams.IsVarArg; IsVisibleInLibrary = funcDescParams.IsVisibleInLibrary; ObsoleteMessage = funcDescParams.ObsoleteMsg; CanUpdatePeriodically = funcDescParams.CanUpdatePeriodically; IsBuiltIn = funcDescParams.IsBuiltIn; }
public FunctionDescriptor(FunctionDescriptorParams funcDescParams) { summary = funcDescParams.Summary; pathManager = funcDescParams.PathManager; Assembly = funcDescParams.Assembly; ClassName = funcDescParams.ClassName; FunctionName = funcDescParams.FunctionName; Parameters = funcDescParams.Parameters.Select( x => { x.UpdateFunctionDescriptor(this); return x; }).ToList(); var type = funcDescParams.FunctionType; var inputParameters = new List<Tuple<string, string>>(); //Add instance parameter as one of the inputs for instance method as well as properties. if(type == FunctionType.InstanceMethod || type == FunctionType.InstanceProperty) inputParameters.Add(Tuple.Create(UnqualifedClassName.ToLower(), UnqualifedClassName)); if (Parameters.Any()) { inputParameters.AddRange(Parameters.Select( par => Tuple.Create(par.Name, par.DisplayTypeName))); } InputParameters = inputParameters; //Not sure why returnType for constructors are var[]..[], use UnqualifiedClassName ReturnType = (type == FunctionType.Constructor) ? UnqualifedClassName : funcDescParams.ReturnType.ToShortString(); Type = type; ReturnKeys = funcDescParams.ReturnKeys; IsVarArg = funcDescParams.IsVarArg; IsVisibleInLibrary = funcDescParams.IsVisibleInLibrary; ObsoleteMessage = funcDescParams.ObsoleteMsg; CanUpdatePeriodically = funcDescParams.CanUpdatePeriodically; IsBuiltIn = funcDescParams.IsBuiltIn; }