immutable

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Apr 12, 2020 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package immutable provides code generator to generate immmutable-like objects and builders for them

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrBadInputType indicates that given type can not be used to generate immutable structure
	ErrBadInputType = errors.New("Input type must be go interface")

	// ErrUnsupportedMethodSignature indicates that method is not suitble to generate immutable structure
	ErrUnsupportedMethodSignature = errors.New("Method must not be anonymous, have 0 input parameters and 1 output")
)

Functions

This section is empty.

Types

type Generator

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

Generator implements immutables code generator

func FromFile

func FromFile(filename string) *Generator

FromFile returns ImmutableGenerator from given file

func (*Generator) Generate

func (g *Generator) Generate(w io.Writer) error

Generate generates immutable struct and builder from a given interface

func (*Generator) WithPackageName

func (g *Generator) WithPackageName(name string) *Generator

WithPackageName sets the package name

Jump to

Keyboard shortcuts

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