github.com/unionj-cloud/go-doudou/v2@v2.3.5/toolkit/gormgen/internal/generate/utils.go (about) 1 package generate 2 3 import ( 4 "strings" 5 ) 6 7 func isCapitalize(s string) bool { 8 if len(s) < 1 { 9 return false 10 } 11 b := s[0] 12 if b >= 'A' && b <= 'Z' { 13 return true 14 } 15 return false 16 } 17 18 func isEnd(b byte) bool { 19 switch { 20 case b >= 'a' && b <= 'z': 21 return false 22 case b >= 'A' && b <= 'Z': 23 return false 24 case b >= '0' && b <= '9': 25 return false 26 case b == '-' || b == '_' || b == '.': 27 return false 28 default: 29 return true 30 } 31 } 32 33 func getPackageName(fullName string) string { 34 return strings.Split(delPointerSym(fullName), ".")[0] 35 } 36 37 func strOutRange(index int, str string) bool { 38 return index >= len(str) 39 } 40 41 func delPointerSym(name string) string { 42 return strings.TrimLeft(name, "*") 43 } 44 45 func getPureName(s string) string { 46 return string(strings.ToLower(delPointerSym(s))[0]) 47 } 48 49 // not need capitalize 50 func getStructName(t string) string { 51 list := strings.Split(t, ".") 52 return list[len(list)-1] 53 } 54 55 func uncaptialize(s string) string { 56 if s == "" { 57 return "" 58 } 59 60 return strings.ToLower(s[:1]) + s[1:] 61 }