Class: Ibex::Runtime::ResourceLimits
- Inherits:
-
Object
- Object
- Ibex::Runtime::ResourceLimits
- Defined in:
- lib/json5/generated_parser.rb
Overview
Immutable per-parser-session resource budgets.
Constant Summary collapse
- DEFAULT_MAX_STACK_DEPTH =
10_000- DEFAULT_MAX_RECOVERY_ATTEMPTS =
100- DEFAULT_MAX_INCREMENTAL_DECOMPOSED_NODES =
100_000- DEFAULT_MAX_SESSION_MEMO_BYTES =
64 * 1024 * 1024
Instance Attribute Summary collapse
- #max_incremental_decomposed_nodes ⇒ Object readonly
- #max_recovery_attempts ⇒ Object readonly
- #max_session_memo_bytes ⇒ Object readonly
- #max_stack_depth ⇒ Object readonly
Instance Method Summary collapse
-
#initialize(max_stack_depth: DEFAULT_MAX_STACK_DEPTH, max_recovery_attempts: DEFAULT_MAX_RECOVERY_ATTEMPTS, max_incremental_decomposed_nodes: DEFAULT_MAX_INCREMENTAL_DECOMPOSED_NODES, max_session_memo_bytes: DEFAULT_MAX_SESSION_MEMO_BYTES) ⇒ ResourceLimits
constructor
A new instance of ResourceLimits.
- #to_h ⇒ Object
Constructor Details
#initialize(max_stack_depth: DEFAULT_MAX_STACK_DEPTH, max_recovery_attempts: DEFAULT_MAX_RECOVERY_ATTEMPTS, max_incremental_decomposed_nodes: DEFAULT_MAX_INCREMENTAL_DECOMPOSED_NODES, max_session_memo_bytes: DEFAULT_MAX_SESSION_MEMO_BYTES) ⇒ ResourceLimits
Returns a new instance of ResourceLimits.
3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 |
# File 'lib/json5/generated_parser.rb', line 3604 def initialize( max_stack_depth: DEFAULT_MAX_STACK_DEPTH, max_recovery_attempts: DEFAULT_MAX_RECOVERY_ATTEMPTS, max_incremental_decomposed_nodes: DEFAULT_MAX_INCREMENTAL_DECOMPOSED_NODES, max_session_memo_bytes: DEFAULT_MAX_SESSION_MEMO_BYTES ) validate_positive_integer(max_stack_depth, :max_stack_depth) validate_nonnegative_integer(max_recovery_attempts, :max_recovery_attempts) validate_nonnegative_integer(max_incremental_decomposed_nodes, :max_incremental_decomposed_nodes) validate_positive_integer(max_session_memo_bytes, :max_session_memo_bytes) @max_stack_depth = max_stack_depth @max_recovery_attempts = max_recovery_attempts @max_incremental_decomposed_nodes = max_incremental_decomposed_nodes @max_session_memo_bytes = max_session_memo_bytes freeze end |
Instance Attribute Details
#max_incremental_decomposed_nodes ⇒ Object (readonly)
3599 3600 3601 |
# File 'lib/json5/generated_parser.rb', line 3599 def max_incremental_decomposed_nodes @max_incremental_decomposed_nodes end |
#max_recovery_attempts ⇒ Object (readonly)
3598 3599 3600 |
# File 'lib/json5/generated_parser.rb', line 3598 def max_recovery_attempts @max_recovery_attempts end |
#max_session_memo_bytes ⇒ Object (readonly)
3600 3601 3602 |
# File 'lib/json5/generated_parser.rb', line 3600 def max_session_memo_bytes @max_session_memo_bytes end |
#max_stack_depth ⇒ Object (readonly)
3597 3598 3599 |
# File 'lib/json5/generated_parser.rb', line 3597 def max_stack_depth @max_stack_depth end |
Instance Method Details
#to_h ⇒ Object
3622 3623 3624 3625 3626 3627 3628 3629 |
# File 'lib/json5/generated_parser.rb', line 3622 def to_h { max_stack_depth: @max_stack_depth, max_recovery_attempts: @max_recovery_attempts, max_incremental_decomposed_nodes: @max_incremental_decomposed_nodes, max_session_memo_bytes: @max_session_memo_bytes }.freeze end |