public static ClassDeclarationSyntax Create(ClassDeclMeta classmeta) { ClassDeclarationBase classdecl; if (classmeta.ClassSymbol.IsGenericType) { classdecl = new GenericClassDeclaration(classmeta); } else { classdecl = new SimpleClassDeclaration(classmeta); } return(classdecl.Generate()); }
private static CompilationUnitSyntax GenerateRootUnit(ClassDeclMeta classmeta) { return(SF.CompilationUnit() .AddUsings( SF.UsingDirective(SF.ParseName("MongoDB.Client.Bson.Reader")), SF.UsingDirective(SF.ParseName("MongoDB.Client.Bson.Writer")), SF.UsingDirective(SF.ParseName("MongoDB.Client.Bson.Serialization")), SF.UsingDirective(SF.ParseName("MongoDB.Client.Bson.Document")), SF.UsingDirective(SF.ParseName("System")), SF.UsingDirective(SF.ParseName("System.Collections.Generic")), SF.UsingDirective(SF.ParseName("System.Buffers.Binary")), SF.UsingDirective(SF.ParseName(classmeta.StringNamespace)))); // .AddMembers(SF.NamespaceDeclaration(SF.ParseName("MongoDB.Client.Bson.Serialization.Generated"))); }
public static CompilationUnitSyntax Create(ClassDeclMeta classmeta) { if (classmeta.MemberDeclarations.Count == 0) { return(default);
private static NamespaceDeclarationSyntax GenerateNamespace(ClassDeclMeta classmeta) { return(SF.NamespaceDeclaration(SF.ParseName("MongoDB.Client.Bson.Serialization.Generated"))); }
public ClassDeclarationBase(ClassDeclMeta classdecl) { classDecl = classdecl; }
public GenericClassDeclaration(ClassDeclMeta classdecl) : base(classdecl) { }
public SimpleClassDeclaration(ClassDeclMeta classdecl) : base(classdecl) { }