kace

package module
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2018 License: MIT Imports: 4 Imported by: 36

README

kace

go get "github.com/codemodus/kace"

Package kace provides common case conversion functions which take into consideration common initialisms.

Usage

func Camel(s string) string
func Kebab(s string) string
func KebabUpper(s string) string
func Pascal(s string) string
func Snake(s string) string
func SnakeUpper(s string) string
type Kace
    func New(initialisms map[string]bool) (*Kace, error)
    func (k *Kace) Camel(s string) string
    func (k *Kace) Kebab(s string) string
    func (k *Kace) KebabUpper(s string) string
    func (k *Kace) Pascal(s string) string
    func (k *Kace) Snake(s string) string
    func (k *Kace) SnakeUpper(s string) string
Setup
import (
    "fmt"

    "github.com/codemodus/kace"
)

func main() {
    s := "this is a test sql."

    fmt.Println(kace.Camel(s))
    fmt.Println(kace.Pascal(s))

    fmt.Println(kace.Snake(s))
    fmt.Println(kace.SnakeUpper(s))

    fmt.Println(kace.Kebab(s))
    fmt.Println(kace.KebabUpper(s))

    customInitialisms := map[string]bool{
        "THIS": true,
    }
    k, err := kace.New(customInitialisms)
    if err != nil {
        // handle error
    }

    fmt.Println(k.Camel(s))
    fmt.Println(k.Pascal(s))

    fmt.Println(k.Snake(s))
    fmt.Println(k.SnakeUpper(s))

    fmt.Println(k.Kebab(s))
    fmt.Println(k.KebabUpper(s))

    // Output:
    // thisIsATestSQL
    // ThisIsATestSQL
    // this_is_a_test_sql
    // THIS_IS_A_TEST_SQL
    // this-is-a-test-sql
    // THIS-IS-A-TEST-SQL
    // thisIsATestSql
    // THISIsATestSql
    // this_is_a_test_sql
    // THIS_IS_A_TEST_SQL
    // this-is-a-test-sql
    // THIS-IS-A-TEST-SQL
}

More Info

TODO
Test Trie

Test the current trie.

Documentation

View the GoDoc

Benchmarks

benchmark                 iter       time/iter   bytes alloc        allocs
---------                 ----       ---------   -----------        ------
BenchmarkCamel4        2000000    947.00 ns/op      112 B/op   3 allocs/op
BenchmarkSnake4        2000000    696.00 ns/op      128 B/op   2 allocs/op
BenchmarkSnakeUpper4   2000000    679.00 ns/op      128 B/op   2 allocs/op
BenchmarkKebab4        2000000    691.00 ns/op      128 B/op   2 allocs/op
BenchmarkKebabUpper4   2000000    677.00 ns/op      128 B/op   2 allocs/op

Documentation

Overview

Package kace provides common case conversion functions which take into consideration common initialisms.

Example
package main

import (
	"fmt"

	"github.com/codemodus/kace"
)

func main() {
	s := "this is a test sql."

	fmt.Println(kace.Camel(s))
	fmt.Println(kace.Pascal(s))

	fmt.Println(kace.Snake(s))
	fmt.Println(kace.SnakeUpper(s))

	fmt.Println(kace.Kebab(s))
	fmt.Println(kace.KebabUpper(s))

	customInitialisms := map[string]bool{
		"THIS": true,
	}
	k, err := kace.New(customInitialisms)
	if err != nil {
		// handle error
	}

	fmt.Println(k.Camel(s))
	fmt.Println(k.Pascal(s))

	fmt.Println(k.Snake(s))
	fmt.Println(k.SnakeUpper(s))

	fmt.Println(k.Kebab(s))
	fmt.Println(k.KebabUpper(s))

}
Output:

thisIsATestSQL
ThisIsATestSQL
this_is_a_test_sql
THIS_IS_A_TEST_SQL
this-is-a-test-sql
THIS-IS-A-TEST-SQL
thisIsATestSql
THISIsATestSql
this_is_a_test_sql
THIS_IS_A_TEST_SQL
this-is-a-test-sql
THIS-IS-A-TEST-SQL

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func Camel

func Camel(s string) string

Camel returns a camelCased string.

func Kebab

func Kebab(s string) string

Kebab returns a kebab-cased string with all lowercase letters.

func KebabUpper

func KebabUpper(s string) string

KebabUpper returns a KEBAB-CASED string with all upper case letters.

func Pascal added in v0.3.0

func Pascal(s string) string

Pascal returns a PascalCased string.

func Snake

func Snake(s string) string

Snake returns a snake_cased string with all lowercase letters.

func SnakeUpper

func SnakeUpper(s string) string

SnakeUpper returns a SNAKE_CASED string with all upper case letters.

Types

type Kace added in v0.3.0

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

Kace provides common case conversion methods which take into consideration common initialisms set by the user.

func New added in v0.3.0

func New(initialisms map[string]bool) (*Kace, error)

New returns a pointer to an instance of kace loaded with a common initialsms trie based on the provided map. Before conversion to a trie, the provided map keys are all upper cased.

func (*Kace) Camel added in v0.3.0

func (k *Kace) Camel(s string) string

Camel returns a camelCased string.

func (*Kace) Kebab added in v0.3.0

func (k *Kace) Kebab(s string) string

Kebab returns a kebab-cased string with all lowercase letters.

func (*Kace) KebabUpper added in v0.3.0

func (k *Kace) KebabUpper(s string) string

KebabUpper returns a KEBAB-CASED string with all upper case letters.

func (*Kace) Pascal added in v0.3.0

func (k *Kace) Pascal(s string) string

Pascal returns a PascalCased string.

func (*Kace) Snake added in v0.3.0

func (k *Kace) Snake(s string) string

Snake returns a snake_cased string with all lowercase letters.

func (*Kace) SnakeUpper added in v0.3.0

func (k *Kace) SnakeUpper(s string) string

SnakeUpper returns a SNAKE_CASED string with all upper case letters.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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