Help us shape the future of Go! Take the 2026 Go Developer Survey

generator

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 26, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GenerateSchemaFromTable

func GenerateSchemaFromTable(tableInfo *types.TableInfo, migrator types.DatabaseSpecificMigrator) (*schema.Schema, error)

GenerateSchemaFromTable creates a schema from database table information

func GenerateSchemasFromTablesWithRelations

func GenerateSchemasFromTablesWithRelations(migrator types.DatabaseMigrator) ([]*schema.Schema, error)

GenerateSchemasFromTablesWithRelations generates schemas with relations inferred from foreign keys

Types

type SchemaGenerator

type SchemaGenerator struct {
	// contains filtered or unexported fields
}

SchemaGenerator converts internal schema to Prisma format

func NewSchemaGenerator

func NewSchemaGenerator(migrator types.DatabaseSpecificMigrator) *SchemaGenerator

NewSchemaGenerator creates a new schema generator

func (*SchemaGenerator) GenerateFullPrismaFile

func (g *SchemaGenerator) GenerateFullPrismaFile(schemas []*schema.Schema, datasource *prisma.DatasourceStatement, generator *prisma.GeneratorStatement) (string, error)

GenerateFullPrismaFile generates a complete Prisma schema file with all models

func (*SchemaGenerator) GeneratePrismaSchema

func (g *SchemaGenerator) GeneratePrismaSchema(s *schema.Schema) (string, error)

GeneratePrismaSchema converts a Schema to Prisma schema string

func (*SchemaGenerator) SchemaToPrismaAST

func (g *SchemaGenerator) SchemaToPrismaAST(s *schema.Schema) (*prisma.ModelStatement, error)

SchemaToPrismaAST converts a Schema to Prisma AST

type SchemaPersistence

type SchemaPersistence struct {
	// contains filtered or unexported fields
}

SchemaPersistence manages reading and writing schema files

func NewSchemaPersistence

func NewSchemaPersistence(schemaPath string, l logger.Logger, migrator types.DatabaseMigrator) *SchemaPersistence

NewSchemaPersistence creates a new schema persistence manager

func (*SchemaPersistence) GetSchemaFiles

func (sp *SchemaPersistence) GetSchemaFiles() map[string]string

GetSchemaFiles returns the mapping of model names to file paths

func (*SchemaPersistence) LoadSchemas

func (sp *SchemaPersistence) LoadSchemas() ([]*schema.Schema, error)

LoadSchemas loads all schemas and tracks their source files

func (*SchemaPersistence) RemoveSchema

func (sp *SchemaPersistence) RemoveSchema(modelName string) error

RemoveSchema removes a schema from its file

func (*SchemaPersistence) SaveSchema

func (sp *SchemaPersistence) SaveSchema(s *schema.Schema) error

SaveSchema saves a schema to the appropriate file

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL