Class: RosettAi::Retrofit::BaseParser Abstract
- Inherits:
-
Object
- Object
- RosettAi::Retrofit::BaseParser
- Defined in:
- lib/rosett_ai/retrofit/base_parser.rb
Overview
This class is abstract.
Subclasses must implement #discover, #parse, and #engine_name.
Abstract base class for engine-specific retrofit parsers.
Each engine provides a parser that knows how to discover and read native config files, convert them to Rosett-AI YAML structure, and identify unknown keys.
Direct Known Subclasses
Parsers::AgentsMdParser, Parsers::ClaudeParser, Parsers::CursorParser
Instance Method Summary collapse
-
#available? ⇒ Boolean
True if this engine's native config is present.
-
#discover ⇒ Array<Pathname>
Discovers native config files for this engine.
-
#engine_name ⇒ String
Engine identifier.
-
#parse(path) ⇒ Hash
Parses a native config file into Rosett-AI YAML structure.
Instance Method Details
#available? ⇒ Boolean
Returns true if this engine's native config is present.
39 40 41 |
# File 'lib/rosett_ai/retrofit/base_parser.rb', line 39 def available? discover.any? end |
#discover ⇒ Array<Pathname>
Discovers native config files for this engine.
26 27 28 |
# File 'lib/rosett_ai/retrofit/base_parser.rb', line 26 def discover raise NotImplementedError, "#{self.class}#discover must be implemented" end |
#engine_name ⇒ String
Returns engine identifier.
19 20 21 |
# File 'lib/rosett_ai/retrofit/base_parser.rb', line 19 def engine_name raise NotImplementedError, "#{self.class}#engine_name must be implemented" end |
#parse(path) ⇒ Hash
Parses a native config file into Rosett-AI YAML structure.
34 35 36 |
# File 'lib/rosett_ai/retrofit/base_parser.rb', line 34 def parse(path) raise NotImplementedError, "#{self.class}#parse must be implemented" end |