private static SyntaxTriviaList BuildDbSetComment(string targetName, string objectType) { if (targetName.IsNullOrWhiteSpace()) { throw new ArgumentNullException(nameof(targetName)); } if (objectType.IsNullOrWhiteSpace()) { throw new ArgumentNullException(nameof(objectType)); } return(SyntaxUtilities.BuildCommentTrivia(new XmlNodeSyntax[] { XmlText("Accesses the "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(targetName))), XmlText(" " + objectType + ".") })); }
private static SyntaxTriviaList BuildColumnComment(Identifier columnName, Option <IRelationalDatabaseTableComments> comment) { if (columnName == null) { throw new ArgumentNullException(nameof(columnName)); } return(comment .Bind(c => c.ColumnComments.TryGetValue(columnName, out var cc) ? cc : Option <string> .None) .Match( SyntaxUtilities.BuildCommentTrivia, () => SyntaxUtilities.BuildCommentTrivia(new XmlNodeSyntax[] { XmlText("The "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(columnName.LocalName))), XmlText(" column.") }) )); }
private static SyntaxTriviaList BuildTableComment(Identifier tableName, Option <IRelationalDatabaseTableComments> comment) { if (tableName == null) { throw new ArgumentNullException(nameof(tableName)); } return(comment .Bind(c => c.Comment) .Match( SyntaxUtilities.BuildCommentTrivia, () => SyntaxUtilities.BuildCommentTrivia(new XmlNodeSyntax[] { XmlText("A mapping class to query the "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(tableName.LocalName))), XmlText(" table.") }) )); }
private static SyntaxTriviaList BuildChildKeyComment(IDatabaseRelationalKey relationalKey) { if (relationalKey == null) { throw new ArgumentNullException(nameof(relationalKey)); } var hasChildKeyName = relationalKey.ChildKey.Name.IsSome; var foreignKeyNameNode = relationalKey.ChildKey.Name.Match( name => XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(name.LocalName))), () => XmlText(string.Empty) as XmlNodeSyntax ); return(SyntaxUtilities.BuildCommentTrivia(new XmlNodeSyntax[] { XmlText("The" + (hasChildKeyName ? " " : string.Empty)), foreignKeyNameNode, XmlText(" child key. Navigates from "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(relationalKey.ParentTable.LocalName))), XmlText(" to "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(relationalKey.ChildTable.LocalName))), XmlText(".") })); }
private static SyntaxTriviaList BuildForeignKeyComment(IDatabaseRelationalKey relationalKey, Option <IRelationalDatabaseTableComments> comment) { if (relationalKey == null) { throw new ArgumentNullException(nameof(relationalKey)); } var hasChildKeyName = relationalKey.ChildKey.Name.IsSome; return(comment .Bind(c => relationalKey.ChildKey.Name .Match( ckName => c.ForeignKeyComments.TryGetValue(ckName, out var fkc) ? fkc : Option <string> .None, () => Option <string> .None)) .Match( SyntaxUtilities.BuildCommentTrivia, () => { var foreignKeyNameNode = relationalKey.ChildKey.Name.Match( name => XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(name.LocalName))), () => XmlText(string.Empty) as XmlNodeSyntax ); return SyntaxUtilities.BuildCommentTrivia(new XmlNodeSyntax[] { XmlText("The" + (hasChildKeyName ? " " : string.Empty)), foreignKeyNameNode, XmlText(" foreign key. Navigates from "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(relationalKey.ChildTable.LocalName))), XmlText(" to "), XmlElement("c", SingletonList <XmlNodeSyntax>(XmlText(relationalKey.ParentTable.LocalName))), XmlText(".") }); } )); }