Categorygithub.com/botherder/go-savetime
repository
1.5.0
Repository: https://github.com/botherder/go-savetime.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# README

go-savetime

Go Report Card Go Reference

A collection of Go libraries to save time from re-writing common functions for operations on files, strings, slices, and more. Refer to the pkg.go.dev page for a complete reference of all available functions.

Files

package main

import (
	"github.com/botherder/go-savetime/files"
)

func main() {
	var err error

	// Copy a file from a source to a destination path.
	err = files.Copy("/path/to/src", "/path/to/dst")

	// Read a JSON file at path into data.
	var data interface{}
	err = files.ReadJSON("/path/file.json", data)

	// Zip a path into archive at destination.
	err = files.Zip("/path/to/folder", "/path/to/archive.zip")
}

Hashes

package main

import (
	"github.com/botherder/go-savetime/hashes"
)

func main() {
	// Hash a file at specified path.
	md5, err := hashes.FileMD5("/path/to/file")
	sha1, err := hashes.FileSHA1("/path/to/file")
	sha256, err := hashes.FileSHA256("/path/to/file")
	sha512, err := hashes.FileSHA512("/path/to/file")

	// Hash a string.
	md5, err = hashes.StringMD5("target")
	sha1, err = hashes.StringSHA1("target")
	sha256, err = hashes.StringSHA256("target")
	sha512, err = hashes.StringSHA512("target")

	// Validate a hash format.
	var valid bool
	valid = hashes.ValidateMD5(md5)
	valid = hashes.ValidateSHA1(sha1)
	valid = hashes.ValidateSHA256(sha256)
	valid = hashes.ValidateSHA512(sha512)
}

Slices

package main

import (
	"github.com/botherder/go-savetime/slice"
)

func main() {
	var contained bool

	// Check if a slice contains a string (case-sensitive).
	contained = slice.Contains([]string{"qwe", "rty"}, "qwe")
	// Check if a slice contains a string (case-insensitive).
	contained = slice.ContainsNoCase([]string{"qwe", "rty"}, "QWE")
}

Text

package main

import (
	"github.com/botherder/go-savetime/text"
)

func main() {
	var contained bool

	// Check if a text contains a string (case-sensitive).
	contained = text.Contains("This is a TEXT", "TEXT")
	// Check if a text contains a string (case-insensitive).
	contained = text.ContainsNoCase("This is a TEXT", "text")
}