code: public static <X> String createFieldId(Field field, Collection<Annotation> annotations) {
          StringBuilder builder = new StringBuilder();
          builder.append(field.getDeclaringClass().getName());
          builder.append('.');
          builder.append(field.getName());
          builder.append(createAnnotationCollectionId(annotations));
          return builder.toString();
      }
docs: Creates a deterministic signature for a {@link Field}.
  
  @param field       The field to generate the signature for
  @param annotations The annotations to include in the signature