Categorygithub.com/imkira/go-interpol
modulepackage
1.1.0
Repository: https://github.com/imkira/go-interpol.git
Documentation: pkg.go.dev

# README

interpol

License GoDoc Build Status Coverage codebeat badge goreportcard

interpol is a Go package for doing format-string like string interpolation using named parameters.

Currently, a template only accepts variable placeholders delimited by brace characters (eg. "Hello {foo} {bar}").

Install

First, you need to install the package:

go get -u github.com/imkira/go-interpol

Documentation

For advanced usage, make sure to check the available documentation here.

Example

The following code should use interpol.WithMap function, which simply replaces every key with the corresponding value of the specified map. When run, it should output Hello World!!!.

package main

import (
	"fmt"

	"github.com/imkira/go-interpol"
)

func main() {
	m := map[string]string{
		"foo": "Hello",
		"bar": "World",
	}
	str, err := interpol.WithMap("{foo} {bar}!!!", m)
	if err != nil {
		fmt.Printf("Error: %v\n", err)
		return
	}
	fmt.Println(str)
}

Contribute

Found a bug? Want to contribute and add a new feature?

Please fork this project and send me a pull request!

License

go-interpol is licensed under the MIT license:

www.opensource.org/licenses/MIT

Copyright

Copyright (c) 2016 Mario Freitas. See LICENSE for further details.

# Packages

No description provided by the author

# Functions

New creates a new interpolator with the given list of options.
NewWithOptions creates a new interpolator with the given options.
WithFormat assigns Format to Options.
WithFunc interpolates the specified template with replacements using the given function.
WithMap interpolates the specified template with replacements using the given map.
WithOutput assigns Output to Options.
WithTemplate assigns Template to Options.

# Variables

Errors returned when formatting templates.
Errors returned when formatting templates.
Errors returned when formatting templates.
Errors returned when formatting templates.

# Structs

Interpolator interpolates Template to Output, according to Format.
Options contains all options supported by an Interpolator.

# Interfaces

OptionSetter is an interface that contains the setters for all options supported by Interpolator.

# Type aliases

Func receives the placeholder key and writes to the io.Writer.
Option is an option that can be applied to an Interpolator.