JSONDecodingOptions.swift 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. // Sources/SwiftProtobuf/JSONDecodingOptions.swift - JSON decoding options
  2. //
  3. // Copyright (c) 2014 - 2017 Apple Inc. and the project authors
  4. // Licensed under Apache License v2.0 with Runtime Library Exception
  5. //
  6. // See LICENSE.txt for license information:
  7. // https://github.com/apple/swift-protobuf/blob/main/LICENSE.txt
  8. //
  9. // -----------------------------------------------------------------------------
  10. ///
  11. /// JSON decoding options
  12. ///
  13. // -----------------------------------------------------------------------------
  14. /// Options for JSONDecoding.
  15. public struct JSONDecodingOptions: Sendable {
  16. /// The maximum nesting of message with messages. The default is 100.
  17. ///
  18. /// To prevent corrupt or malicious messages from causing stack overflows,
  19. /// this controls how deep messages can be nested within other messages
  20. /// while parsing.
  21. public var messageDepthLimit: Int = 100
  22. /// If unknown fields in the JSON should be ignored. If they aren't
  23. /// ignored, an error will be raised if one is encountered. This also
  24. /// causes unknown enum values (especially string values) to be silently
  25. /// ignored.
  26. public var ignoreUnknownFields: Bool = false
  27. public init() {}
  28. }