Class: AgentHarness::Extensions::CompatibilityReport
- Inherits:
-
Object
- Object
- AgentHarness::Extensions::CompatibilityReport
- Defined in:
- lib/agent_harness/extensions.rb
Instance Attribute Summary collapse
-
#extension ⇒ Object
readonly
Returns the value of attribute extension.
-
#missing_provider_capabilities ⇒ Object
readonly
Returns the value of attribute missing_provider_capabilities.
-
#provider ⇒ Object
readonly
Returns the value of attribute provider.
-
#unsupported_features ⇒ Object
readonly
Returns the value of attribute unsupported_features.
Instance Method Summary collapse
- #compatible? ⇒ Boolean
- #fully_supported? ⇒ Boolean
-
#initialize(extension:, provider:, missing_provider_capabilities:, unsupported_features:) ⇒ CompatibilityReport
constructor
A new instance of CompatibilityReport.
- #to_h ⇒ Object
Constructor Details
#initialize(extension:, provider:, missing_provider_capabilities:, unsupported_features:) ⇒ CompatibilityReport
Returns a new instance of CompatibilityReport.
94 95 96 97 98 99 |
# File 'lib/agent_harness/extensions.rb', line 94 def initialize(extension:, provider:, missing_provider_capabilities:, unsupported_features:) @extension = extension @provider = provider @missing_provider_capabilities = missing_provider_capabilities.freeze @unsupported_features = unsupported_features.freeze end |
Instance Attribute Details
#extension ⇒ Object (readonly)
Returns the value of attribute extension.
92 93 94 |
# File 'lib/agent_harness/extensions.rb', line 92 def extension @extension end |
#missing_provider_capabilities ⇒ Object (readonly)
Returns the value of attribute missing_provider_capabilities.
92 93 94 |
# File 'lib/agent_harness/extensions.rb', line 92 def missing_provider_capabilities @missing_provider_capabilities end |
#provider ⇒ Object (readonly)
Returns the value of attribute provider.
92 93 94 |
# File 'lib/agent_harness/extensions.rb', line 92 def provider @provider end |
#unsupported_features ⇒ Object (readonly)
Returns the value of attribute unsupported_features.
92 93 94 |
# File 'lib/agent_harness/extensions.rb', line 92 def unsupported_features @unsupported_features end |
Instance Method Details
#compatible? ⇒ Boolean
101 102 103 |
# File 'lib/agent_harness/extensions.rb', line 101 def compatible? @missing_provider_capabilities.empty? end |
#fully_supported? ⇒ Boolean
105 106 107 |
# File 'lib/agent_harness/extensions.rb', line 105 def fully_supported? compatible? && @unsupported_features.empty? end |
#to_h ⇒ Object
109 110 111 112 113 114 115 116 117 118 |
# File 'lib/agent_harness/extensions.rb', line 109 def to_h { extension: extension.name, provider: provider.class.provider_name, compatible: compatible?, fully_supported: fully_supported?, missing_provider_capabilities: missing_provider_capabilities.dup, unsupported_features: unsupported_features.dup } end |