@Value.Lazy
  public Styles getStyles() {
    return new Styles(this);
  }
We copy styles to StyleInfo to safely cache styles between rounds etc and prevent any memory
leaks by unnecessary retaining compiler internal structures.
value-processor/src/org/immutables/value/processor/meta/StyleInfo.java