module JSON::Pure::Generator::GeneratorMethods::Array - JSON implemention for Ruby

# module JSON::Pure::Generator::GeneratorMethods::Array

### Public Instance Methods

to_json(state = nil, *) click to toggle source

Returns a JSON string containing a JSON array, that is unparsed from this Array instance. state is a JSON::State object, that can also be used to configure the produced JSON string output further.

    # File lib/json/pure/generator.rb, line 382
    def to_json(state = nil, *)
      state = State.from_state(state)
      state.check_max_nesting
      json_transform(state)
    end

### Private Instance Methods

json_transform(state) click to toggle source

    # File lib/json/pure/generator.rb, line 390
    def json_transform(state)
      delim = ','
      delim << state.array_nl
      result = '['
      result << state.array_nl
      depth = state.depth += 1
      first = true
      indent = !state.array_nl.empty?
      each { |value|
        result << delim unless first
        result << state.indent * depth if indent
        result << value.to_json(state)
        first = false
      }
      depth = state.depth -= 1
      result << state.array_nl
      result << state.indent * depth if indent
      result << ']'
    end