strings

package
v0.0.0-...-8cdf743 Latest Latest
Warning

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

Go to latest
Published: May 9, 2024 License: MIT Imports: 5 Imported by: 1

Documentation

Overview

Package strings provides strings module implementing simple functions to manipulate UTF-8 encoded strings for Charlang script language. It wraps Go's strings package functionalities.

Index

Constants

This section is empty.

Variables

View Source
var Module = map[string]charlang.Object{

	"Contains": &charlang.Function{
		Name:    "Contains",
		Value:   stdlib.FuncPssRO(containsFunc),
		ValueEx: stdlib.FuncPssROEx(containsFunc),
	},

	"ContainsAny": &charlang.Function{
		Name:    "ContainsAny",
		Value:   stdlib.FuncPssRO(containsAnyFunc),
		ValueEx: stdlib.FuncPssROEx(containsAnyFunc),
	},

	"ContainsChar": &charlang.Function{
		Name:    "ContainsChar",
		Value:   stdlib.FuncPsrRO(containsCharFunc),
		ValueEx: stdlib.FuncPsrROEx(containsCharFunc),
	},

	"Count": &charlang.Function{
		Name:    "Count",
		Value:   stdlib.FuncPssRO(countFunc),
		ValueEx: stdlib.FuncPssROEx(countFunc),
	},

	"EqualFold": &charlang.Function{
		Name:    "EqualFold",
		Value:   stdlib.FuncPssRO(equalFoldFunc),
		ValueEx: stdlib.FuncPssROEx(equalFoldFunc),
	},

	"Fields": &charlang.Function{
		Name:    "Fields",
		Value:   stdlib.FuncPsRO(fieldsFunc),
		ValueEx: stdlib.FuncPsROEx(fieldsFunc),
	},

	"FieldsFunc": &charlang.Function{
		Name: "FieldsFunc",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return fieldsFuncInv(charlang.NewCall(nil, args))
		},
		ValueEx: fieldsFuncInv,
	},

	"HasPrefix": &charlang.Function{
		Name:    "HasPrefix",
		Value:   stdlib.FuncPssRO(hasPrefixFunc),
		ValueEx: stdlib.FuncPssROEx(hasPrefixFunc),
	},

	"HasSuffix": &charlang.Function{
		Name:    "HasSuffix",
		Value:   stdlib.FuncPssRO(hasSuffixFunc),
		ValueEx: stdlib.FuncPssROEx(hasSuffixFunc),
	},

	"Index": &charlang.Function{
		Name:    "Index",
		Value:   stdlib.FuncPssRO(indexFunc),
		ValueEx: stdlib.FuncPssROEx(indexFunc),
	},

	"IndexAny": &charlang.Function{
		Name:    "IndexAny",
		Value:   stdlib.FuncPssRO(indexAnyFunc),
		ValueEx: stdlib.FuncPssROEx(indexAnyFunc),
	},

	"IndexByte": &charlang.Function{
		Name:    "IndexByte",
		Value:   stdlib.FuncPsrRO(indexByteFunc),
		ValueEx: stdlib.FuncPsrROEx(indexByteFunc),
	},

	"IndexChar": &charlang.Function{
		Name:    "IndexChar",
		Value:   stdlib.FuncPsrRO(indexCharFunc),
		ValueEx: stdlib.FuncPsrROEx(indexCharFunc),
	},

	"IndexFunc": &charlang.Function{
		Name: "IndexFunc",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newIndexFuncInv(strings.IndexFunc)(charlang.NewCall(nil, args))
		},
		ValueEx: newIndexFuncInv(strings.IndexFunc),
	},

	"Join": &charlang.Function{
		Name:    "Join",
		Value:   stdlib.FuncPAsRO(joinFunc),
		ValueEx: stdlib.FuncPAsROEx(joinFunc),
	},

	"LastIndex": &charlang.Function{
		Name:    "LastIndex",
		Value:   stdlib.FuncPssRO(lastIndexFunc),
		ValueEx: stdlib.FuncPssROEx(lastIndexFunc),
	},

	"LastIndexAny": &charlang.Function{
		Name:    "LastIndexAny",
		Value:   stdlib.FuncPssRO(lastIndexAnyFunc),
		ValueEx: stdlib.FuncPssROEx(lastIndexAnyFunc),
	},

	"LastIndexByte": &charlang.Function{
		Name:    "LastIndexByte",
		Value:   stdlib.FuncPsrRO(lastIndexByteFunc),
		ValueEx: stdlib.FuncPsrROEx(lastIndexByteFunc),
	},

	"LastIndexFunc": &charlang.Function{
		Name: "LastIndexFunc",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newIndexFuncInv(strings.LastIndexFunc)(charlang.NewCall(nil, args))
		},
		ValueEx: newIndexFuncInv(strings.LastIndexFunc),
	},

	"Map": &charlang.Function{
		Name: "Map",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return mapFuncInv(charlang.NewCall(nil, args))
		},
		ValueEx: mapFuncInv,
	},

	"PadLeft": &charlang.Function{
		Name: "PadLeft",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return pad(charlang.NewCall(nil, args), true)
		},
		ValueEx: func(c charlang.Call) (charlang.Object, error) {
			return pad(c, true)
		},
	},

	"PadRight": &charlang.Function{
		Name: "PadRight",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return pad(charlang.NewCall(nil, args), false)
		},
		ValueEx: func(c charlang.Call) (charlang.Object, error) {
			return pad(c, false)
		},
	},

	"Repeat": &charlang.Function{
		Name:    "Repeat",
		Value:   stdlib.FuncPsiRO(repeatFunc),
		ValueEx: stdlib.FuncPsiROEx(repeatFunc),
	},

	"Replace": &charlang.Function{
		Name: "Replace",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return replaceFunc(charlang.NewCall(nil, args))
		},
		ValueEx: replaceFunc,
	},

	"Split": &charlang.Function{
		Name: "Split",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSplitFunc(strings.SplitN)(charlang.NewCall(nil, args))
		},
		ValueEx: newSplitFunc(strings.SplitN),
	},

	"SplitAfter": &charlang.Function{
		Name: "SplitAfter",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSplitFunc(strings.SplitAfterN)(charlang.NewCall(nil, args))
		},
		ValueEx: newSplitFunc(strings.SplitAfterN),
	},

	"Title": &charlang.Function{
		Name:    "Title",
		Value:   stdlib.FuncPsRO(titleFunc),
		ValueEx: stdlib.FuncPsROEx(titleFunc),
	},

	"ToLower": &charlang.Function{
		Name:    "ToLower",
		Value:   stdlib.FuncPsRO(toLowerFunc),
		ValueEx: stdlib.FuncPsROEx(toLowerFunc),
	},

	"ToTitle": &charlang.Function{
		Name:    "ToTitle",
		Value:   stdlib.FuncPsRO(toTitleFunc),
		ValueEx: stdlib.FuncPsROEx(toTitleFunc),
	},

	"ToUpper": &charlang.Function{
		Name:    "ToUpper",
		Value:   stdlib.FuncPsRO(toUpperFunc),
		ValueEx: stdlib.FuncPsROEx(toUpperFunc),
	},

	"ToValidUTF8": &charlang.Function{
		Name: "ToValidUTF8",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return toValidUTF8Func(charlang.NewCall(nil, args))
		},
		ValueEx: toValidUTF8Func,
	},

	"Trim": &charlang.Function{
		Name:    "Trim",
		Value:   stdlib.FuncPssRO(trimFunc),
		ValueEx: stdlib.FuncPssROEx(trimFunc),
	},

	"TrimFunc": &charlang.Function{
		Name: "TrimFunc",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newTrimFuncInv(strings.TrimFunc)(charlang.NewCall(nil, args))
		},
		ValueEx: newTrimFuncInv(strings.TrimFunc),
	},

	"TrimLeft": &charlang.Function{
		Name:    "TrimLeft",
		Value:   stdlib.FuncPssRO(trimLeftFunc),
		ValueEx: stdlib.FuncPssROEx(trimLeftFunc),
	},

	"TrimLeftFunc": &charlang.Function{
		Name: "TrimLeftFunc",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newTrimFuncInv(strings.TrimLeftFunc)(charlang.NewCall(nil, args))
		},
		ValueEx: newTrimFuncInv(strings.TrimLeftFunc),
	},

	"TrimPrefix": &charlang.Function{
		Name:    "TrimPrefix",
		Value:   stdlib.FuncPssRO(trimPrefixFunc),
		ValueEx: stdlib.FuncPssROEx(trimPrefixFunc),
	},

	"TrimRight": &charlang.Function{
		Name:    "TrimRight",
		Value:   stdlib.FuncPssRO(trimRightFunc),
		ValueEx: stdlib.FuncPssROEx(trimRightFunc),
	},

	"TrimRightFunc": &charlang.Function{
		Name: "TrimRightFunc",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newTrimFuncInv(strings.TrimRightFunc)(charlang.NewCall(nil, args))
		},
		ValueEx: newTrimFuncInv(strings.TrimRightFunc),
	},

	"TrimSpace": &charlang.Function{
		Name:    "TrimSpace",
		Value:   stdlib.FuncPsRO(trimSpaceFunc),
		ValueEx: stdlib.FuncPsROEx(trimSpaceFunc),
	},

	"TrimSuffix": &charlang.Function{
		Name:    "TrimSuffix",
		Value:   stdlib.FuncPssRO(trimSuffixFunc),
		ValueEx: stdlib.FuncPssROEx(trimSuffixFunc),
	},
}

Module represents time module.

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

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