private static Signature SignatureFromSymbol(Symbol symbol) { var result = new Signature(); result.Name = symbol.Name; result.Description = symbol.BriefComment; if (symbol.IsBuiltInType) { result.BuiltInReturnType = symbol.ResultType; } else { result.ReturnType = symbol.ResultType; } foreach (var param in symbol.Arguments) { var newParam = new Parameter(); if (param.IsBuiltInType) { newParam.BuiltInType = param.TypeDescription; } else { newParam.Type = param.TypeDescription; } newParam.Name = param.Name; newParam.Documentation = param.Comment; result.Parameters.Add(newParam); } return result; }