|
@@ -242,8 +242,19 @@ func Fields(obj any, files RequestFiles, names ...any) (json.Map, IErrorArgs) {
|
|
return res, nil
|
|
return res, nil
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+type FieldNamesList []string
|
|
|
|
+
|
|
|
|
+func (s FieldNamesList) Exists(name string) bool {
|
|
|
|
+ for _, fName := range s {
|
|
|
|
+ if fName == name {
|
|
|
|
+ return true
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return false
|
|
|
|
+}
|
|
|
|
+
|
|
// GetStructFields возвращает список полей структуры
|
|
// GetStructFields возвращает список полей структуры
|
|
-func FieldNames(s any) ([]string, error) {
|
|
|
|
|
|
+func FieldNames(s any) (FieldNamesList, error) {
|
|
// Получаем тип и проверяем, что это структура
|
|
// Получаем тип и проверяем, что это структура
|
|
t := reflect.TypeOf(s)
|
|
t := reflect.TypeOf(s)
|
|
if t.Kind() == reflect.Ptr || t.Kind() == reflect.Interface {
|
|
if t.Kind() == reflect.Ptr || t.Kind() == reflect.Interface {
|