@@ -76,6 +76,10 @@ public int indentionStep() {
7676 return builder .indentionStep ;
7777 }
7878
79+ public boolean omitZero () {
80+ return builder .omitZero ;
81+ }
82+
7983 public boolean escapeUnicode () {
8084 return builder .escapeUnicode ;
8185 }
@@ -90,6 +94,7 @@ public static class Builder {
9094 private EncodingMode encodingMode ;
9195 private int indentionStep ;
9296 private boolean escapeUnicode = true ;
97+ private boolean omitZero ;
9398
9499 public Builder () {
95100 String envMode = System .getenv ("JSONITER_DECODING_MODE" );
@@ -121,6 +126,11 @@ public Builder indentionStep(int indentionStep) {
121126 return this ;
122127 }
123128
129+ public Builder omitZero (boolean b ) {
130+ omitZero = b ;
131+ return this ;
132+ }
133+
124134 public Builder escapeUnicode (boolean escapeUnicode ) {
125135 this .escapeUnicode = escapeUnicode ;
126136 return this ;
@@ -159,6 +169,7 @@ public boolean equals(Object o) {
159169 if (indentionStep != builder .indentionStep ) return false ;
160170 if (escapeUnicode != builder .escapeUnicode ) return false ;
161171 if (decodingMode != builder .decodingMode ) return false ;
172+ if (omitZero != builder .omitZero ) return false ;
162173 return encodingMode == builder .encodingMode ;
163174 }
164175
@@ -168,6 +179,7 @@ public int hashCode() {
168179 result = 31 * result + (encodingMode != null ? encodingMode .hashCode () : 0 );
169180 result = 31 * result + indentionStep ;
170181 result = 31 * result + (escapeUnicode ? 1 : 0 );
182+ result = 31 * result + (omitZero ? 1 : 0 );
171183 return result ;
172184 }
173185
@@ -177,6 +189,7 @@ public Builder copy() {
177189 builder .decodingMode = decodingMode ;
178190 builder .indentionStep = indentionStep ;
179191 builder .escapeUnicode = escapeUnicode ;
192+ builder .omitZero = omitZero ;
180193 return builder ;
181194 }
182195 }
0 commit comments