goja-core/src/main/java/goja/core/kits/reflect/Reflect.java
public Map<String, Reflect> fields() {
        Map<String, Reflect> result = Maps.newLinkedHashMap();

        for (Field field : type().getFields()) {
            if (!isClass ^ Modifier.isStatic(field.getModifiers())) {
                String name = field.getName();
                result.put(name, field(name));
            }
        }

        return result;
    }
public Map<String, Reflect> fields() {
        Map<String, Reflect> result = Maps.newLinkedHashMap();

        for (Field field : type().getFields()) {
            if (!isClass ^ Modifier.isStatic(field.getModifiers())) {
                String name = field.getName();
                result.put(name, field(name));
            }
        }

        return result;
    }
Get a Map containing field names and wrapped values for the fields' values. <p/> If the wrapped
object is a {@link Class}, then this will return static fields. If the wrapped object is any
other {@link Object}, then this will return instance fields. <p/>
These two calls are equivalent <code><pre>
on(object).field("myField");
on(object).fields().get("myField");
</pre></code>

@return A map containing field names and wrapped values.