code: public FieldDefinition defineField(String fieldName, int modifiers, String signature, Object value) {
          FieldDefinition field = new FieldDefinition(fieldName, modifiers, signature, value);
          this.fields.add(field);
          return field;
      }
docs: Defines a new field on the target class
  
  @param fieldName the field name
  @param modifiers  the modifier bitmask, made by OR'ing constants from ASM's {@link Opcodes} interface
  @param signature  the field signature, on standard JVM notation
  @param value the default value (null for JVM default)
  @return the new field definition for further modification