gotosocial/vendor/github.com/go-openapi/inflect
Vyr Cossont fc3741365c
[bugfix] Fix Swagger spec and add test script (#2698)
* Add Swagger spec test script

* Fix Swagger spec errors not related to statuses with polls

* Add API tests that post a status with a poll

* Fix creating a status with a poll from form params

* Fix Swagger spec errors related to statuses with polls (this is the last error)

* Fix Swagger spec warnings not related to unused definitions

* Suppress a duplicate list update params definition that was somehow causing wrong param names

* Add Swagger test to CI

- updates Drone config
- vendorizes go-swagger
- fixes a file extension issue that caused the test script to generate JSON instead of YAML with the vendorized version

* Put `Sample: ` on its own line everywhere

* Remove unused id param from emojiCategoriesGet

* Add 5 more pairs of profile fields to account update API Swagger

* Remove Swagger prefix from dummy fields

It makes the generated code look weird

* Manually annotate params for statusCreate operation

* Fix all remaining Swagger spec warnings

- Change some models into operation parameters
- Ignore models that already correspond to manually documented operation parameters but can't be trivially changed (those with file fields)

* Documented that creating a status with scheduled_at isn't implemented yet

* sign drone.yml

* Fix filter API Swagger errors

* fixup! Fix filter API Swagger errors

---------

Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2024-03-06 18:05:45 +01:00
..
.hgignore [bugfix] Fix Swagger spec and add test script (#2698) 2024-03-06 18:05:45 +01:00
inflect.go [bugfix] Fix Swagger spec and add test script (#2698) 2024-03-06 18:05:45 +01:00
LICENCE [bugfix] Fix Swagger spec and add test script (#2698) 2024-03-06 18:05:45 +01:00
README [bugfix] Fix Swagger spec and add test script (#2698) 2024-03-06 18:05:45 +01:00

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"