summaryrefslogtreecommitdiff
path: root/vendor/github.com/go-openapi/inflect
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2024-04-26 11:31:10 +0200
committerLibravatar GitHub <noreply@github.com>2024-04-26 11:31:10 +0200
commitfd8a724e77123d5035d4070581dab777b4533ebb (patch)
tree0d3d20ad5c7c2177d970ead12f5108d1d3666623 /vendor/github.com/go-openapi/inflect
parent[chore] Upgrade our Go version to 1.22 (#2862) (diff)
downloadgotosocial-fd8a724e77123d5035d4070581dab777b4533ebb.tar.xz
[chore] Bump go swagger (#2871)
* bump go swagger version * bump swagger version
Diffstat (limited to 'vendor/github.com/go-openapi/inflect')
-rw-r--r--vendor/github.com/go-openapi/inflect/.gitignore5
-rw-r--r--vendor/github.com/go-openapi/inflect/.golangci.yml61
-rw-r--r--vendor/github.com/go-openapi/inflect/.hgignore1
-rw-r--r--vendor/github.com/go-openapi/inflect/LICENSE (renamed from vendor/github.com/go-openapi/inflect/LICENCE)0
-rw-r--r--vendor/github.com/go-openapi/inflect/README168
-rw-r--r--vendor/github.com/go-openapi/inflect/README.md18
-rw-r--r--vendor/github.com/go-openapi/inflect/inflect.go37
7 files changed, 102 insertions, 188 deletions
diff --git a/vendor/github.com/go-openapi/inflect/.gitignore b/vendor/github.com/go-openapi/inflect/.gitignore
new file mode 100644
index 000000000..87c3bd3e6
--- /dev/null
+++ b/vendor/github.com/go-openapi/inflect/.gitignore
@@ -0,0 +1,5 @@
+secrets.yml
+coverage.out
+coverage.txt
+*.cov
+.idea
diff --git a/vendor/github.com/go-openapi/inflect/.golangci.yml b/vendor/github.com/go-openapi/inflect/.golangci.yml
new file mode 100644
index 000000000..22f8d21cc
--- /dev/null
+++ b/vendor/github.com/go-openapi/inflect/.golangci.yml
@@ -0,0 +1,61 @@
+linters-settings:
+ govet:
+ check-shadowing: true
+ golint:
+ min-confidence: 0
+ gocyclo:
+ min-complexity: 45
+ maligned:
+ suggest-new: true
+ dupl:
+ threshold: 200
+ goconst:
+ min-len: 2
+ min-occurrences: 3
+
+linters:
+ enable-all: true
+ disable:
+ - maligned
+ - unparam
+ - lll
+ - gochecknoinits
+ - gochecknoglobals
+ - funlen
+ - godox
+ - gocognit
+ - whitespace
+ - wsl
+ - wrapcheck
+ - testpackage
+ - nlreturn
+ - gomnd
+ - exhaustivestruct
+ - goerr113
+ - errorlint
+ - nestif
+ - godot
+ - gofumpt
+ - paralleltest
+ - tparallel
+ - thelper
+ - ifshort
+ - exhaustruct
+ - varnamelen
+ - gci
+ - depguard
+ - errchkjson
+ - inamedparam
+ - nonamedreturns
+ - musttag
+ - ireturn
+ - forcetypeassert
+ - cyclop
+ # deprecated linters
+ - deadcode
+ - interfacer
+ - scopelint
+ - varcheck
+ - structcheck
+ - golint
+ - nosnakecase
diff --git a/vendor/github.com/go-openapi/inflect/.hgignore b/vendor/github.com/go-openapi/inflect/.hgignore
deleted file mode 100644
index 6cc3d7ce1..000000000
--- a/vendor/github.com/go-openapi/inflect/.hgignore
+++ /dev/null
@@ -1 +0,0 @@
-swp$
diff --git a/vendor/github.com/go-openapi/inflect/LICENCE b/vendor/github.com/go-openapi/inflect/LICENSE
index 8a36b944a..8a36b944a 100644
--- a/vendor/github.com/go-openapi/inflect/LICENCE
+++ b/vendor/github.com/go-openapi/inflect/LICENSE
diff --git a/vendor/github.com/go-openapi/inflect/README b/vendor/github.com/go-openapi/inflect/README
deleted file mode 100644
index 014699a22..000000000
--- a/vendor/github.com/go-openapi/inflect/README
+++ /dev/null
@@ -1,168 +0,0 @@
-INSTALLATION
-
-go get bitbucket.org/pkg/inflect
-
-PACKAGE
-
-package inflect
-
-
-FUNCTIONS
-
-func AddAcronym(word string)
-
-func AddHuman(suffix, replacement string)
-
-func AddIrregular(singular, plural string)
-
-func AddPlural(suffix, replacement string)
-
-func AddSingular(suffix, replacement string)
-
-func AddUncountable(word string)
-
-func Asciify(word string) string
-
-func Camelize(word string) string
-
-func CamelizeDownFirst(word string) string
-
-func Capitalize(word string) string
-
-func Dasherize(word string) string
-
-func ForeignKey(word string) string
-
-func ForeignKeyCondensed(word string) string
-
-func Humanize(word string) string
-
-func Ordinalize(word string) string
-
-func Parameterize(word string) string
-
-func ParameterizeJoin(word, sep string) string
-
-func Pluralize(word string) string
-
-func Singularize(word string) string
-
-func Tableize(word string) string
-
-func Titleize(word string) string
-
-func Typeify(word string) string
-
-func Uncountables() map[string]bool
-
-func Underscore(word string) string
-
-
-TYPES
-
-type Rule struct {
- // contains filtered or unexported fields
-}
-used by rulesets
-
-type Ruleset struct {
- // contains filtered or unexported fields
-}
-a Ruleset is the config of pluralization rules
-you can extend the rules with the Add* methods
-
-func NewDefaultRuleset() *Ruleset
-create a new ruleset and load it with the default
-set of common English pluralization rules
-
-func NewRuleset() *Ruleset
-create a blank ruleset. Unless you are going to
-build your own rules from scratch you probably
-won't need this and can just use the defaultRuleset
-via the global inflect.* methods
-
-func (rs *Ruleset) AddAcronym(word string)
-if you use acronym you may need to add them to the ruleset
-to prevent Underscored words of things like "HTML" coming out
-as "h_t_m_l"
-
-func (rs *Ruleset) AddHuman(suffix, replacement string)
-Human rules are applied by humanize to show more friendly
-versions of words
-
-func (rs *Ruleset) AddIrregular(singular, plural string)
-Add any inconsistant pluralizing/sinularizing rules
-to the set here.
-
-func (rs *Ruleset) AddPlural(suffix, replacement string)
-add a pluralization rule
-
-func (rs *Ruleset) AddPluralExact(suffix, replacement string, exact bool)
-add a pluralization rule with full string match
-
-func (rs *Ruleset) AddSingular(suffix, replacement string)
-add a singular rule
-
-func (rs *Ruleset) AddSingularExact(suffix, replacement string, exact bool)
-same as AddSingular but you can set `exact` to force
-a full string match
-
-func (rs *Ruleset) AddUncountable(word string)
-add a word to this ruleset that has the same singular and plural form
-for example: "rice"
-
-func (rs *Ruleset) Asciify(word string) string
-transforms latin characters like é -> e
-
-func (rs *Ruleset) Camelize(word string) string
-"dino_party" -> "DinoParty"
-
-func (rs *Ruleset) CamelizeDownFirst(word string) string
-same as Camelcase but with first letter downcased
-
-func (rs *Ruleset) Capitalize(word string) string
-uppercase first character
-
-func (rs *Ruleset) Dasherize(word string) string
-"SomeText" -> "some-text"
-
-func (rs *Ruleset) ForeignKey(word string) string
-an underscored foreign key name "Person" -> "person_id"
-
-func (rs *Ruleset) ForeignKeyCondensed(word string) string
-a foreign key (with an underscore) "Person" -> "personid"
-
-func (rs *Ruleset) Humanize(word string) string
-First letter of sentance captitilized
-Uses custom friendly replacements via AddHuman()
-
-func (rs *Ruleset) Ordinalize(str string) string
-"1031" -> "1031st"
-
-func (rs *Ruleset) Parameterize(word string) string
-param safe dasherized names like "my-param"
-
-func (rs *Ruleset) ParameterizeJoin(word, sep string) string
-param safe dasherized names with custom seperator
-
-func (rs *Ruleset) Pluralize(word string) string
-returns the plural form of a singular word
-
-func (rs *Ruleset) Singularize(word string) string
-returns the singular form of a plural word
-
-func (rs *Ruleset) Tableize(word string) string
-Rails style pluralized table names: "SuperPerson" -> "super_people"
-
-func (rs *Ruleset) Titleize(word string) string
-Captitilize every word in sentance "hello there" -> "Hello There"
-
-func (rs *Ruleset) Typeify(word string) string
-"something_like_this" -> "SomethingLikeThis"
-
-func (rs *Ruleset) Uncountables() map[string]bool
-
-func (rs *Ruleset) Underscore(word string) string
-lowercase underscore version "BigBen" -> "big_ben"
-
-
diff --git a/vendor/github.com/go-openapi/inflect/README.md b/vendor/github.com/go-openapi/inflect/README.md
new file mode 100644
index 000000000..187b23b93
--- /dev/null
+++ b/vendor/github.com/go-openapi/inflect/README.md
@@ -0,0 +1,18 @@
+# inflect [![Build Status](https://github.com/go-openapi/inflect/actions/workflows/go-test.yml/badge.svg)](https://github.com/go-openapi/inflect/actions?query=workflow%3A"go+test") [![codecov](https://codecov.io/gh/go-openapi/inflect/branch/master/graph/badge.svg)](https://codecov.io/gh/go-openapi/inflect)
+
+[![Slack Status](https://slackin.goswagger.io/badge.svg)](https://slackin.goswagger.io)
+[![license](http://img.shields.io/badge/license-Apache%20v2-orange.svg)](https://raw.githubusercontent.com/go-openapi/inflect/master/LICENSE)
+[![Go Reference](https://pkg.go.dev/badge/github.com/go-openapi/inflect.svg)](https://pkg.go.dev/github.com/go-openapi/inflect)
+[![Go Report Card](https://goreportcard.com/badge/github.com/go-openapi/inflect)](https://goreportcard.com/report/github.com/go-openapi/inflect)
+
+A package to pluralize words.
+
+Originally forked from fork of https://bitbucket.org/pkg/inflect under a MIT License.
+
+A golang library applying grammar rules to English words.
+
+> This package provides a basic set of functions applying
+> grammar rules to inflect English words, modify case style
+> (Capitalize, camelCase, snake_case, etc.).
+>
+> Acronyms are properly handled. A common use case is word pluralization.
diff --git a/vendor/github.com/go-openapi/inflect/inflect.go b/vendor/github.com/go-openapi/inflect/inflect.go
index 3008844ca..9d8ca6dbd 100644
--- a/vendor/github.com/go-openapi/inflect/inflect.go
+++ b/vendor/github.com/go-openapi/inflect/inflect.go
@@ -19,12 +19,11 @@ type Rule struct {
// a Ruleset is the config of pluralization rules
// you can extend the rules with the Add* methods
type Ruleset struct {
- uncountables map[string]bool
- plurals []*Rule
- singulars []*Rule
- humans []*Rule
- acronyms []*Rule
- acronymMatcher *regexp.Regexp
+ uncountables map[string]bool
+ plurals []*Rule
+ singulars []*Rule
+ humans []*Rule
+ acronyms []*Rule
}
// create a blank ruleset. Unless you are going to
@@ -282,7 +281,7 @@ func (rs *Ruleset) AddHuman(suffix, replacement string) {
rs.humans = append([]*Rule{r}, rs.humans...)
}
-// Add any inconsistant pluralizing/sinularizing rules
+// Add any inconsistent pluralizing/sinularizing rules
// to the set here.
func (rs *Ruleset) AddIrregular(singular, plural string) {
delete(rs.uncountables, singular)
@@ -387,7 +386,7 @@ func (rs *Ruleset) Titleize(word string) string {
func (rs *Ruleset) safeCaseAcronyms(word string) string {
// convert an acroymn like HTML into Html
for _, rule := range rs.acronyms {
- word = strings.Replace(word, rule.suffix, rule.replacement, -1)
+ word = strings.ReplaceAll(word, rule.suffix, rule.replacement)
}
return word
}
@@ -409,7 +408,7 @@ func (rs *Ruleset) Humanize(word string) string {
word = replaceLast(word, "_id", "") // strip foreign key kinds
// replace and strings in humans list
for _, rule := range rs.humans {
- word = strings.Replace(word, rule.suffix, rule.replacement, -1)
+ word = strings.ReplaceAll(word, rule.suffix, rule.replacement)
}
sentance := rs.seperatedWords(word, " ")
return strings.ToUpper(sentance[:1]) + sentance[1:]
@@ -430,19 +429,19 @@ func (rs *Ruleset) Tableize(word string) string {
return rs.Pluralize(rs.Underscore(rs.Typeify(word)))
}
-var notUrlSafe *regexp.Regexp = regexp.MustCompile(`[^\w\d\-_ ]`)
+var notURLSafe = regexp.MustCompile(`[^\w\d\-_ ]`)
// param safe dasherized names like "my-param"
func (rs *Ruleset) Parameterize(word string) string {
return ParameterizeJoin(word, "-")
}
-// param safe dasherized names with custom seperator
+// param safe dasherized names with custom separator
func (rs *Ruleset) ParameterizeJoin(word, sep string) string {
word = strings.ToLower(word)
word = rs.Asciify(word)
- word = notUrlSafe.ReplaceAllString(word, "")
- word = strings.Replace(word, " ", sep, -1)
+ word = notURLSafe.ReplaceAllString(word, "")
+ word = strings.ReplaceAll(word, " ", sep)
if len(sep) > 0 {
squash, err := regexp.Compile(sep + "+")
if err == nil {
@@ -453,7 +452,7 @@ func (rs *Ruleset) ParameterizeJoin(word, sep string) string {
return word
}
-var lookalikes map[string]*regexp.Regexp = map[string]*regexp.Regexp{
+var lookalikes = map[string]*regexp.Regexp{
"A": regexp.MustCompile(`À|Á|Â|Ã|Ä|Å`),
"AE": regexp.MustCompile(`Æ`),
"C": regexp.MustCompile(`Ç`),
@@ -487,7 +486,7 @@ func (rs *Ruleset) Asciify(word string) string {
return word
}
-var tablePrefix *regexp.Regexp = regexp.MustCompile(`^[^.]*\.`)
+var tablePrefix = regexp.MustCompile(`^[^.]*\.`)
// "something_like_this" -> "SomethingLikeThis"
func (rs *Ruleset) Typeify(word string) string {
@@ -642,13 +641,13 @@ func reverse(s string) string {
func isSpacerChar(c rune) bool {
switch {
- case c == rune("_"[0]):
+ case c == '_':
return true
- case c == rune(" "[0]):
+ case c == ':':
return true
- case c == rune(":"[0]):
+ case c == '-':
return true
- case c == rune("-"[0]):
+ case unicode.IsSpace(c):
return true
}
return false