本文整理汇总了Golang中github.com/spf13/cast.ToInt函数的典型用法代码示例。如果您正苦于以下问题:Golang ToInt函数的具体用法?Golang ToInt怎么用?Golang ToInt使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ToInt函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: newSearchRequest
func newSearchRequest(request *http.Request, params httprouter.Params) *SearchRequest {
searchReq := &SearchRequest{}
values, err := getRequestValues(request)
if err != nil {
return searchReq
}
formValues := TreePostFormValues(values)
ordering := parseOrdering(formValues)
if _, ok := formValues["columns"]; ok {
columnsList := formValues["columns"].(map[string]interface{})
searchReq.Columns = make([]*ColumnDefinition, len(columnsList))
for key, column := range columnsList {
searchReq.Columns[cast.ToInt(key)] = newColumnDefinition(column.(map[string]interface{}), DataTableOrder(ordering[key]))
}
searchReq.Draw = cast.ToInt(formValues["draw"])
searchReq.Length = cast.ToInt(formValues["length"])
searchReq.Start = cast.ToInt(formValues["start"])
searchReq.Search = newSearchDefinition(formValues["search"].(map[string]interface{}))
}
return searchReq
}
开发者ID:RobinUS2,项目名称:indispenso,代码行数:26,代码来源:core.go
示例2: Get
// Get can retrieve any value given the key to use
// Get returns an interface. For a specific value use one of the Get____ methods.
func (c RawConfig) Get(key string) interface{} {
path := strings.Split(key, keyDelim)
val := c.find(strings.ToLower(key))
if val == nil {
source := c.find(path[0])
if source == nil {
return nil
}
if reflect.TypeOf(source).Kind() == reflect.Map {
val = c.searchMap(cast.ToStringMap(source), path[1:])
}
}
switch val.(type) {
case bool:
return cast.ToBool(val)
case string:
return cast.ToString(val)
case int64, int32, int16, int8, int:
return cast.ToInt(val)
case float64, float32:
return cast.ToFloat64(val)
case time.Time:
return cast.ToTime(val)
case time.Duration:
return cast.ToDuration(val)
case []string:
return val
}
return val
}
开发者ID:mefellows,项目名称:parity,代码行数:36,代码来源:config.go
示例3: Offset
func Offset(c *gin.Context) int {
curPage := cast.ToInt(c.Request.FormValue("p")) - 1
if curPage < 1 {
return 0
}
return pLimit * curPage
}
开发者ID:yangzhares,项目名称:dagobah,代码行数:7,代码来源:server.go
示例4: toSortedLanguages
func toSortedLanguages(l map[string]interface{}) (helpers.Languages, error) {
langs := make(helpers.Languages, len(l))
i := 0
for lang, langConf := range l {
langsMap, err := cast.ToStringMapE(langConf)
if err != nil {
return nil, fmt.Errorf("Language config is not a map: %T", langConf)
}
language := helpers.NewLanguage(lang)
for loki, v := range langsMap {
switch loki {
case "title":
language.Title = cast.ToString(v)
case "languagename":
language.LanguageName = cast.ToString(v)
case "weight":
language.Weight = cast.ToInt(v)
}
// Put all into the Params map
language.SetParam(loki, v)
}
langs[i] = language
i++
}
sort.Sort(langs)
return langs, nil
}
开发者ID:digitalcraftsman,项目名称:hugo,代码行数:35,代码来源:multilingual.go
示例5: Get
func (v *Viper) Get(key string) interface{} {
key = strings.ToLower(key)
val := v.find(key)
if val == nil {
return nil
}
switch val.(type) {
case bool:
return cast.ToBool(val)
case string:
return cast.ToString(val)
case int64, int32, int16, int8, int:
return cast.ToInt(val)
case float64, float32:
return cast.ToFloat64(val)
case time.Time:
return cast.ToTime(val)
case time.Duration:
return cast.ToDuration(val)
case []string:
return val
}
return val
}
开发者ID:pandemicsyn,项目名称:stalker,代码行数:26,代码来源:viper.go
示例6: Get
func (v *Viper) Get(key string) interface{} {
lcaseKey := strings.ToLower(key)
val := v.find(lcaseKey)
if val == nil {
return nil
}
valType := val
if v.typeByDefValue {
// TODO(bep) this branch isn't covered by a single test.
path := strings.Split(lcaseKey, v.keyDelim)
defVal := v.searchMap(v.defaults, path)
if defVal != nil {
valType = defVal
}
}
switch valType.(type) {
case bool:
return cast.ToBool(val)
case string:
return cast.ToString(val)
case int64, int32, int16, int8, int:
return cast.ToInt(val)
case float64, float32:
return cast.ToFloat64(val)
case time.Time:
return cast.ToTime(val)
case time.Duration:
return cast.ToDuration(val)
case []string:
return cast.ToStringSlice(val)
}
return val
}
开发者ID:luizbafilho,项目名称:fusis,代码行数:35,代码来源:viper.go
示例7: getParam
func (p *Page) getParam(key string, stringToLower bool) interface{} {
v := p.Params[strings.ToLower(key)]
if v == nil {
return nil
}
switch v.(type) {
case bool:
return cast.ToBool(v)
case string:
if stringToLower {
return strings.ToLower(cast.ToString(v))
}
return cast.ToString(v)
case int64, int32, int16, int8, int:
return cast.ToInt(v)
case float64, float32:
return cast.ToFloat64(v)
case time.Time:
return cast.ToTime(v)
case []string:
if stringToLower {
return helpers.SliceToLower(v.([]string))
}
return v.([]string)
case map[string]interface{}: // JSON and TOML
return v
case map[interface{}]interface{}: // YAML
return v
}
jww.ERROR.Printf("GetParam(\"%s\"): Unknown type %s\n", key, reflect.TypeOf(v))
return nil
}
开发者ID:JTrembl1,项目名称:hugo,代码行数:35,代码来源:page.go
示例8: parseSizeInBytes
// parseSizeInBytes converts strings like 1GB or 12 mb into an unsigned integer number of bytes
func parseSizeInBytes(sizeStr string) uint {
sizeStr = strings.TrimSpace(sizeStr)
lastChar := len(sizeStr) - 1
multiplier := uint(1)
if lastChar > 0 {
if sizeStr[lastChar] == 'b' || sizeStr[lastChar] == 'B' {
if lastChar > 1 {
switch unicode.ToLower(rune(sizeStr[lastChar-1])) {
case 'k':
multiplier = 1 << 10
sizeStr = strings.TrimSpace(sizeStr[:lastChar-1])
case 'm':
multiplier = 1 << 20
sizeStr = strings.TrimSpace(sizeStr[:lastChar-1])
case 'g':
multiplier = 1 << 30
sizeStr = strings.TrimSpace(sizeStr[:lastChar-1])
default:
multiplier = 1
sizeStr = strings.TrimSpace(sizeStr[:lastChar])
}
}
}
}
size := cast.ToInt(sizeStr)
if size < 0 {
size = 0
}
return safeMul(uint(size), multiplier)
}
开发者ID:ARodri,项目名称:hume,代码行数:34,代码来源:util.go
示例9: Get
// Get returns an interface..
// Must be typecast or used by something that will typecast
func (manager *Config) Get(key string) interface{} {
jww.TRACE.Println("Looking for", key)
v := manager.Find(key)
if v == nil {
return nil
}
jww.TRACE.Println("Found value", v)
switch v.(type) {
case bool:
return cast.ToBool(v)
case string:
return cast.ToString(v)
case int64, int32, int16, int8, int:
return cast.ToInt(v)
case float64, float32:
return cast.ToFloat64(v)
case time.Time:
return cast.ToTime(v)
case []string:
return v
}
return v
}
开发者ID:MightyE,项目名称:confer,代码行数:28,代码来源:confer.go
示例10: loadMaxAge
func (c *Config) loadMaxAge(seq sequence) {
c.maxAgePatterns = newGlobList(0)
el, ok := seq.elForKey("max_age")
if !ok {
return
}
if defaultMaxAge := cast.ToInt(el.value); defaultMaxAge > 0 {
c.maxAgePatterns.defaultValue = defaultMaxAge
} else if len(el.sequence) > 0 {
for _, subEl := range el.sequence {
if age := cast.ToInt(subEl.value); age > 0 {
c.maxAgePatterns.add(subEl.key, age)
}
}
}
}
开发者ID:michaeldwan,项目名称:static,代码行数:16,代码来源:config.go
示例11: Get
func (v *Viper) Get(key string) interface{} {
path := strings.Split(key, v.keyDelim)
var val interface{}
lcaseKey := strings.ToLower(key)
source := v.find(path[0])
if source != nil {
if reflect.TypeOf(source).Kind() == reflect.Map {
val = v.searchMap(cast.ToStringMap(source), path[1:])
}
}
if val == nil {
val = v.find(lcaseKey)
}
if val == nil {
return nil
}
var valType interface{}
if !v.typeByDefValue {
valType = val
} else {
defVal, defExists := v.defaults[lcaseKey]
if defExists {
valType = defVal
} else {
valType = val
}
}
switch valType.(type) {
case bool:
return cast.ToBool(val)
case string:
return cast.ToString(val)
case int64, int32, int16, int8, int:
return cast.ToInt(val)
case float64, float32:
return cast.ToFloat64(val)
case time.Time:
return cast.ToTime(val)
case time.Duration:
return cast.ToDuration(val)
case []string:
return cast.ToStringSlice(val)
}
return val
}
开发者ID:DLag,项目名称:viper,代码行数:50,代码来源:viper.go
示例12: MarshallMap
func (me *MenuEntry) MarshallMap(ime map[string]interface{}) {
for k, v := range ime {
loki := strings.ToLower(k)
switch loki {
case "url":
me.Url = cast.ToString(v)
case "weight":
me.Weight = cast.ToInt(v)
case "name":
me.Name = cast.ToString(v)
case "parent":
me.Parent = cast.ToString(v)
}
}
}
开发者ID:nathanleclaire,项目名称:hugo,代码行数:15,代码来源:menu.go
示例13: BindPFlag
func (v *Viper) BindPFlag(key string, flag *pflag.Flag) (err error) {
if flag == nil {
return fmt.Errorf("flag for %q is nil", key)
}
v.pflags[strings.ToLower(key)] = flag
switch flag.Value.Type() {
case "int", "int8", "int16", "int32", "int64":
SetDefault(key, cast.ToInt(flag.Value.String()))
case "bool":
SetDefault(key, cast.ToBool(flag.Value.String()))
default:
SetDefault(key, flag.Value.String())
}
return nil
}
开发者ID:pandemicsyn,项目名称:stalker,代码行数:16,代码来源:viper.go
示例14: BindPFlag
// Binds a configuration key to a command line flag:
// pflag.Int("port", 8080, "The best alternative port")
// confer.BindPFlag("port", pflag.Lookup("port"))
func (manager *Config) BindPFlag(key string, flag *pflag.Flag) (err error) {
if flag == nil {
return fmt.Errorf("flag for %q is nil", key)
}
manager.pflags.Set(key, flag)
switch flag.Value.Type() {
case "int", "int8", "int16", "int32", "int64":
manager.SetDefault(key, cast.ToInt(flag.Value.String()))
case "bool":
manager.SetDefault(key, cast.ToBool(flag.Value.String()))
default:
manager.SetDefault(key, flag.Value.String())
}
return nil
}
开发者ID:MightyE,项目名称:confer,代码行数:20,代码来源:confer.go
示例15: doTestCaseInsensitive
func doTestCaseInsensitive(t *testing.T, typ, config string) {
initConfig(typ, config)
Set("RfD", true)
assert.Equal(t, true, Get("rfd"))
assert.Equal(t, true, Get("rFD"))
assert.Equal(t, 1, cast.ToInt(Get("abcd")))
assert.Equal(t, 1, cast.ToInt(Get("Abcd")))
assert.Equal(t, 2, cast.ToInt(Get("ef.gh")))
assert.Equal(t, 3, cast.ToInt(Get("ef.ijk")))
assert.Equal(t, 4, cast.ToInt(Get("ef.lm.no")))
assert.Equal(t, 5, cast.ToInt(Get("ef.lm.p.q")))
}
开发者ID:luizbafilho,项目名称:fusis,代码行数:13,代码来源:viper_test.go
示例16: BindPFlags
func (v *Viper) BindPFlags(flags *pflag.FlagSet) (err error) {
flags.VisitAll(func(flag *pflag.Flag) {
if err != nil {
// an error has been encountered in one of the previous flags
return
}
err = v.BindPFlag(flag.Name, flag)
switch flag.Value.Type() {
case "int", "int8", "int16", "int32", "int64":
v.SetDefault(flag.Name, cast.ToInt(flag.Value.String()))
case "bool":
v.SetDefault(flag.Name, cast.ToBool(flag.Value.String()))
default:
v.SetDefault(flag.Name, flag.Value.String())
}
})
return
}
开发者ID:DLag,项目名称:viper,代码行数:19,代码来源:viper.go
示例17: MarshallMap
func (me *MenuEntry) MarshallMap(ime map[string]interface{}) {
for k, v := range ime {
loki := strings.ToLower(k)
switch loki {
case "url":
me.URL = cast.ToString(v)
case "weight":
me.Weight = cast.ToInt(v)
case "name":
me.Name = cast.ToString(v)
case "pre":
me.Pre = template.HTML(cast.ToString(v))
case "post":
me.Post = template.HTML(cast.ToString(v))
case "identifier":
me.Identifier = cast.ToString(v)
case "parent":
me.Parent = cast.ToString(v)
}
}
}
开发者ID:Gabriel0402,项目名称:hugo,代码行数:21,代码来源:menu.go
示例18: Get
//get Config value by key
func (c *Config) Get(key string) interface{} {
val := c.get(key)
switch val.(type) {
case bool:
return cast.ToBool(val)
case string:
return cast.ToString(val)
case int64, int32, int16, int8, int:
return cast.ToInt(val)
case float64, float32:
return cast.ToFloat64(val)
case time.Time:
return cast.ToTime(val)
case time.Duration:
return cast.ToDuration(val)
case []string:
return val
}
return val
}
开发者ID:samphomsopha,项目名称:jsonfig,代码行数:23,代码来源:config.go
示例19: ReadConfigFile
// ReadConfigFile read user defined hosts in .ayi.yml
func ReadConfigFile() {
log.Debug("Read git section in config file")
hostsMap = make(map[string]Host)
hostsSlice := cast.ToSlice(viper.Get("git.hosts"))
for _, h := range hostsSlice {
m := cast.ToStringMap(h)
_, exists := m["name"]
if !exists {
log.Warn("Skipp host without name")
continue
}
// TODO: more attributes, the following is not working
// - http port
// - support ssh
name := cast.ToString(m["name"])
https := cast.ToBool(util.GetWithDefault(m, "https", true))
port := cast.ToInt(util.GetWithDefault(m, "port", DefaultSSHPort))
h := NewHost(name)
h.SupportHTTPS = https
h.SSHPort = port
hosts = append(hosts, *h)
// TODO: may add order to host
hostsMap[name] = *h
}
// only merge default hosts that are not configed in config files
for _, defaultHost := range DefaultHosts {
_, exists := hostsMap[defaultHost.URL]
if !exists {
hosts = append(hosts, defaultHost)
hostsMap[defaultHost.URL] = defaultHost
}
}
}
开发者ID:dyweb,项目名称:Ayi,代码行数:39,代码来源:config.go
示例20: GetParam
func (s *SiteInfo) GetParam(key string) interface{} {
v := s.Params[strings.ToLower(key)]
if v == nil {
return nil
}
switch v.(type) {
case bool:
return cast.ToBool(v)
case string:
return cast.ToString(v)
case int64, int32, int16, int8, int:
return cast.ToInt(v)
case float64, float32:
return cast.ToFloat64(v)
case time.Time:
return cast.ToTime(v)
case []string:
return v
}
return nil
}
开发者ID:jaden,项目名称:hugo,代码行数:23,代码来源:site.go
注:本文中的github.com/spf13/cast.ToInt函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论