anchor.diff:  The following lists the behavior for each annotation target.
   
   ===== FIELD
  -
  -When a field of type Meter, Timer, Counter or Histogram is annotated, the implementation must provide the registered metric to the application.
  -The implementation must register the metric for the field using the <<annotated-naming-convention>> if it does not already exist, otherwise it
  -will retrieve the metric from the registry and produce it to the application.
  -
  -.Example of an annotated field
  +When a metric producer field is annotated, the implementation must register the metric to the application `MetricRegistry` (using the <<annotated-naming-convention>>). If a metric with the given name already exist (created by another @Produces for example), an `java.lang.IllegalArgumentException` must be thrown.
  +
  +.Example of a producer field
  +[source, java]
  +----
  +@Produces
  +@Metric(name="hitPercentage")
  +@ApplicationScoped
  +Gauge<Double> hitPercentage = new Gauge<Double>() {
  +
  +  @Override
  +  public Double getValue() {
  +      return hits / total;
  +  }
  +};
  +----
  +
  +When a metric injected field is annotated, the implementation must provide the registered metric with the given name (using the <<annotated-naming-convention>>) if the metric already exist. If no metric exists with the given name then the implementation must produce and register the requested metric.
  +
  +.Example of an injected field
   [source, java]
   ----
   @Inject
  
positive.code: Counter count;
  ----
  
  ===== METHOD
  
  <TO DO>
  
  ===== PARAMETER
  <TO DO>
  
  
  [[metric-registries]]
  === Metric Registries
  
negative.code: 
  |@Counted | M, C, T | Denotes a counter, which counts the invocations of the annotated object. | MetricUnit.NONE
  |@Gauge   | M, F | Denotes a gauge, which samples the value of the annotated object.  | _none_ Must be supplied by the user
  |@Metered | M, C, T  | Denotes a meter, which tracks the frequency of invocations of the annotated object. | MetricUnit.PER_SECOND
  |@Metric  | M, F, P | An annotation requesting that a metric should be injected. This annotation can be used on the fields
      of type `Meter`, `Timer`, `Counter`, and `Histogram`. | MetricUnit.NONE
  |@Timed   | M, C, T | Denotes a timer, which tracks duration of the annotated object. | MetricUnit.NANOSECONDS
  |===
  (C=Constructor, F=Field, M=Method, P=Parameter, T=Type)
  
  