Class JsonGeneratorImpl

java.lang.Object
org.eclipse.parsson.JsonGeneratorImpl
All Implemented Interfaces:
jakarta.json.stream.JsonGenerator, Closeable, Flushable, AutoCloseable
Direct Known Subclasses:
JsonPrettyGeneratorImpl

class JsonGeneratorImpl extends Object implements jakarta.json.stream.JsonGenerator
  • Field Details

    • INT_MIN_VALUE_CHARS

      private static final char[] INT_MIN_VALUE_CHARS
    • INT_CHARS_SIZE_TABLE

      private static final int[] INT_CHARS_SIZE_TABLE
    • DIGIT_TENS

      private static final char[] DIGIT_TENS
    • DIGIT_ONES

      private static final char[] DIGIT_ONES
    • DIGITS

      private static final char[] DIGITS
      All possible chars for representing a number as a String
    • bufferPool

      private final BufferPool bufferPool
    • writer

      private final Writer writer
    • currentContext

      private JsonGeneratorImpl.Context currentContext
    • stack

      private final Deque<JsonGeneratorImpl.Context> stack
    • buf

      private final char[] buf
    • len

      private int len
    • closed

      private boolean closed
  • Constructor Details

  • Method Details

    • flush

      public void flush()
      Specified by:
      flush in interface Flushable
      Specified by:
      flush in interface jakarta.json.stream.JsonGenerator
    • writeStartObject

      public jakarta.json.stream.JsonGenerator writeStartObject()
      Specified by:
      writeStartObject in interface jakarta.json.stream.JsonGenerator
    • writeStartObject

      public jakarta.json.stream.JsonGenerator writeStartObject(String name)
      Specified by:
      writeStartObject in interface jakarta.json.stream.JsonGenerator
    • writeName

      private jakarta.json.stream.JsonGenerator writeName(String name)
    • write

      public jakarta.json.stream.JsonGenerator write(String name, String fieldValue)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, int value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, long value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, double value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, BigInteger value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, BigDecimal value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, boolean value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • writeNull

      public jakarta.json.stream.JsonGenerator writeNull(String name)
      Specified by:
      writeNull in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(jakarta.json.JsonValue value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • writeStartArray

      public jakarta.json.stream.JsonGenerator writeStartArray()
      Specified by:
      writeStartArray in interface jakarta.json.stream.JsonGenerator
    • writeStartArray

      public jakarta.json.stream.JsonGenerator writeStartArray(String name)
      Specified by:
      writeStartArray in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String name, jakarta.json.JsonValue value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(String value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(int value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(long value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(double value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • write

      public jakarta.json.stream.JsonGenerator write(BigInteger value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • checkContextForValue

      private void checkContextForValue()
    • write

      public jakarta.json.stream.JsonGenerator write(BigDecimal value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • popFieldContext

      private void popFieldContext()
    • write

      public jakarta.json.stream.JsonGenerator write(boolean value)
      Specified by:
      write in interface jakarta.json.stream.JsonGenerator
    • writeNull

      public jakarta.json.stream.JsonGenerator writeNull()
      Specified by:
      writeNull in interface jakarta.json.stream.JsonGenerator
    • writeValue

      private void writeValue(String value)
    • writeValue

      private void writeValue(String name, String value)
    • writeKey

      public jakarta.json.stream.JsonGenerator writeKey(String name)
      Specified by:
      writeKey in interface jakarta.json.stream.JsonGenerator
    • writeEnd

      public jakarta.json.stream.JsonGenerator writeEnd()
      Specified by:
      writeEnd in interface jakarta.json.stream.JsonGenerator
    • write

      void write(String name, CharSequence fieldValue)
    • writeComma

      protected void writeComma()
    • inNone

      protected boolean inNone()
    • isCommaAllowed

      boolean isCommaAllowed()
    • writeColon

      protected void writeColon()
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface jakarta.json.stream.JsonGenerator
    • writeEscapedString

      void writeEscapedString(CharSequence string)
    • writeString

      void writeString(CharSequence str, int begin, int end)
    • writeString

      void writeString(CharSequence str)
    • writeChar

      void writeChar(char c)
    • writeInt

      void writeInt(int num)
    • flushBuffer

      void flushBuffer()
    • stringSize

      private static int stringSize(int x)
    • getChars

      void getChars(CharSequence str, int srcBegin, int srcEnd, char[] dst, int dstBegin)
    • fillIntChars

      private static void fillIntChars(int i, char[] buf, int index)
      Places characters representing the integer i into the character array buf. The characters are placed into the buffer backwards starting with the least significant digit at the specified index (exclusive), and working backwards from there. Will fail if i == Integer.MIN_VALUE