Class: Expect::Configuration
- Inherits:
-
Object
- Object
- Expect::Configuration
- Defined in:
- lib/expect/configuration.rb
Overview
集中校验会话配置。类级默认值以冻结快照发布,每个会话再构造独立副本。 这里只保存策略值,不持有 IO、缓冲或日志对象;修改默认配置不会追溯影响已创建的会话。
Constant Summary collapse
- ATTRIBUTES =
会话通过 Forwardable 委托这些属性;to_h 使用同一清单生成配置副本。
i[ timeout write_timeout buffer_limit debug_level raw_pty preserve_buffer log_stdout log_listeners raw_terminal reset_timeout_on_read graceful_close ].freeze
- PREDICATES =
布尔属性同时提供普通读方法和问号查询,写入统一采用 Ruby 真值规则。
i[ raw_pty? preserve_buffer? log_stdout? log_listeners? raw_terminal? reset_timeout_on_read? graceful_close? ].freeze
Instance Attribute Summary collapse
-
#buffer_limit ⇒ Object
Returns the value of attribute buffer_limit.
-
#debug_level ⇒ Object
Returns the value of attribute debug_level.
-
#graceful_close ⇒ Object
(also: #graceful_close?)
Returns the value of attribute graceful_close.
-
#log_listeners ⇒ Object
(also: #log_listeners?)
Returns the value of attribute log_listeners.
-
#log_stdout ⇒ Object
(also: #log_stdout?)
Returns the value of attribute log_stdout.
-
#preserve_buffer ⇒ Object
(also: #preserve_buffer?)
Returns the value of attribute preserve_buffer.
-
#raw_pty ⇒ Object
(also: #raw_pty?)
Returns the value of attribute raw_pty.
-
#raw_terminal ⇒ Object
(also: #raw_terminal?)
Returns the value of attribute raw_terminal.
-
#reset_timeout_on_read ⇒ Object
(also: #reset_timeout_on_read?)
Returns the value of attribute reset_timeout_on_read.
-
#timeout ⇒ Object
Returns the value of attribute timeout.
-
#write_timeout ⇒ Object
Returns the value of attribute write_timeout.
Instance Method Summary collapse
-
#initialize(timeout: nil, write_timeout: nil, buffer_limit: nil, debug_level: 0, raw_pty: false, preserve_buffer: false, log_stdout: false, log_listeners: true, raw_terminal: true, reset_timeout_on_read: false, graceful_close: false) ⇒ Configuration
constructor
通过 setter 校验构造参数,确保默认值、构造覆盖和后续赋值遵守同一规则。.
-
#to_h ⇒ Object
导出新的属性 Hash,用于构造会话副本或发布下一份默认配置。.
Constructor Details
#initialize(timeout: nil, write_timeout: nil, buffer_limit: nil, debug_level: 0, raw_pty: false, preserve_buffer: false, log_stdout: false, log_listeners: true, raw_terminal: true, reset_timeout_on_read: false, graceful_close: false) ⇒ Configuration
通过 setter 校验构造参数,确保默认值、构造覆盖和后续赋值遵守同一规则。
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/expect/configuration.rb', line 22 def initialize(timeout: nil, write_timeout: nil, buffer_limit: nil, debug_level: 0, raw_pty: false, preserve_buffer: false, log_stdout: false, log_listeners: true, raw_terminal: true, reset_timeout_on_read: false, graceful_close: false) self.timeout = timeout self.write_timeout = write_timeout self.buffer_limit = buffer_limit self.debug_level = debug_level self.raw_pty = raw_pty self.preserve_buffer = preserve_buffer self.log_stdout = log_stdout self.log_listeners = log_listeners self.raw_terminal = raw_terminal self.reset_timeout_on_read = reset_timeout_on_read self.graceful_close = graceful_close end |
Instance Attribute Details
#buffer_limit ⇒ Object
Returns the value of attribute buffer_limit.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def buffer_limit @buffer_limit end |
#debug_level ⇒ Object
Returns the value of attribute debug_level.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def debug_level @debug_level end |
#graceful_close ⇒ Object Also known as: graceful_close?
Returns the value of attribute graceful_close.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def graceful_close @graceful_close end |
#log_listeners ⇒ Object Also known as: log_listeners?
Returns the value of attribute log_listeners.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def log_listeners @log_listeners end |
#log_stdout ⇒ Object Also known as: log_stdout?
Returns the value of attribute log_stdout.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def log_stdout @log_stdout end |
#preserve_buffer ⇒ Object Also known as: preserve_buffer?
Returns the value of attribute preserve_buffer.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def preserve_buffer @preserve_buffer end |
#raw_pty ⇒ Object Also known as: raw_pty?
Returns the value of attribute raw_pty.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def raw_pty @raw_pty end |
#raw_terminal ⇒ Object Also known as: raw_terminal?
Returns the value of attribute raw_terminal.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def raw_terminal @raw_terminal end |
#reset_timeout_on_read ⇒ Object Also known as: reset_timeout_on_read?
Returns the value of attribute reset_timeout_on_read.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def reset_timeout_on_read @reset_timeout_on_read end |
#timeout ⇒ Object
Returns the value of attribute timeout.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def timeout @timeout end |
#write_timeout ⇒ Object
Returns the value of attribute write_timeout.
18 19 20 |
# File 'lib/expect/configuration.rb', line 18 def write_timeout @write_timeout end |
Instance Method Details
#to_h ⇒ Object
导出新的属性 Hash,用于构造会话副本或发布下一份默认配置。
118 119 120 |
# File 'lib/expect/configuration.rb', line 118 def to_h ATTRIBUTES.to_h { |name| [name, public_send(name)] } end |