gen

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2020 License: BSD-3-Clause Imports: 14 Imported by: 1

Documentation

Index

Constants

View Source
const SHADOW_DIR = ".hof/"

Variables

This section is empty.

Functions

func LoadShadow

func LoadShadow(verbose bool) (map[string]*File, error)

Types

type File

type File struct {
	// Inputs
	Filename string
	Template string
	In       map[string]interface{}

	// Template parameters
	TemplateSystem string

	// Content
	TemplateContent string
	RenderContent   []byte
	FinalContent    []byte

	// Shadow related
	ShadowFile *File
	UserFile   *File

	// Bookkeeping
	FileStats
}

func (*File) FormatRendered

func (F *File) FormatRendered() error

func (*File) ReadShadow

func (F *File) ReadShadow() error

func (*File) ReadUser

func (F *File) ReadUser() error

func (*File) Render

func (F *File) Render() error

func (*File) RenderGolangTemplate

func (F *File) RenderGolangTemplate() error

func (*File) RenderRaymondTemplate

func (F *File) RenderRaymondTemplate() error

func (*File) RenderTemplate

func (F *File) RenderTemplate() error

func (*File) UnifyContent

func (F *File) UnifyContent() (write bool, err error)

func (*File) WriteOutput

func (F *File) WriteOutput() error

func (*File) WriteShadow

func (F *File) WriteShadow() error

type FileStats

type FileStats struct {
	// using 0 (false) and 1 (true) for easier summation code below
	IsNew     int
	IsSame    int
	IsSkipped int
	IsFixed   int
	IsWritten int
	IsErr     int

	IsModified       int
	IsModifiedRender int
	IsModifiedOutput int
	IsModifiedDiff3  int
	IsConflicted     int

	RenderingTime time.Duration
	CompareTime   time.Duration
	TotalTime     time.Duration
}

type Generator

type Generator struct {
	// Label in Cuelang
	Name string

	// These will be set externally
	In  map[string]interface{}
	Out []map[string]interface{}

	// Files and the shadow dir for doing neat things
	Files  map[string]*File
	Shadow map[string]*File

	// Status for this generator and processing
	Stats *GeneratorStats

	// Cuelang related, also set externally
	CueValue cue.Value
}

A generator pulled from the cue instances

func NewGenerator

func NewGenerator(label string, value cue.Value) *Generator

func (*Generator) GenerateFiles

func (G *Generator) GenerateFiles() error

func (*Generator) LoadCue

func (G *Generator) LoadCue() error

type GeneratorStats

type GeneratorStats struct {
	NumNew     int
	NumSame    int
	NumSkipped int
	NumFixed   int
	NumDeleted int
	NumWritten int
	NumErr     int
	TotalFiles int

	NumModified       int
	NumModifiedRender int
	NumModifiedOutput int
	NumModifiedDiff3  int
	NumConflicted     int

	CueLoadingTime time.Duration
	RenderingTime  time.Duration
	TotalTime      time.Duration
}

func (*GeneratorStats) CalcTotals

func (S *GeneratorStats) CalcTotals(G *Generator) error

func (*GeneratorStats) String

func (S *GeneratorStats) String() string

type Generators

type Generators map[string]*Generator

A map to generators

Jump to

Keyboard shortcuts

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