Ancestry.Daisy.Documentation.StatementDocumentation.FromReflection C# (CSharp) Method

FromReflection() public static method

public static FromReflection ( ReflectionStatementDefinition reflectionStatementDefinition, ICommentDocumentation commentDocumentation ) : StatementDocumentation
reflectionStatementDefinition Ancestry.Daisy.Statements.ReflectionStatementDefinition
commentDocumentation ICommentDocumentation
return StatementDocumentation
        public static StatementDocumentation FromReflection(ReflectionStatementDefinition reflectionStatementDefinition, ICommentDocumentation commentDocumentation)
        {
            var methodDocs = commentDocumentation.ForMethod(reflectionStatementDefinition.MethodInfo);
            return new StatementDocumentation() {
                Parameters = (reflectionStatementDefinition.Parameters ?? Enumerable.Empty<StatementParameter>())
                              .Select(p => new ParameterDocumentation(){
                                  Name = p.Name,
                                  Type = p.Type,
                                  Description = methodDocs.With(d => d.Parameters.With(p.Name)),
                                  TransformsTo = (p as ProceedParameter).With(z => z.TransformsTo)
                              })
                              .ToList(),
                Description = methodDocs.With(x => x.Summary),
                ScopeType = reflectionStatementDefinition.ScopeType,
                Title = ExtractTitle(reflectionStatementDefinition)
            };
        }