{"record":{"id":"44b795cf252cb027","repo":"rouge-ruby/rouge","slug":"no-keyword-set-name-inspect-defined-try-defin","errorCode":null,"errorMessage":"no keyword set #{name.inspect} defined - try defining one!","messagePattern":"no keyword set #(.+?) defined - try defining one!","errorType":"exception","errorClass":"RuntimeError","httpStatus":null,"severity":"error","filePath":"lib/rouge/regex_lexer.rb","lineNumber":405,"sourceCode":"      states[name.to_sym] ||= begin\n        defn = state_definitions[name.to_sym] or raise \"unknown state: #{name.inspect}\"\n        defn.to_state(self)\n      end\n    end\n\n    def self.dangerous_alternation_regexp(list)\n      # rubocop:disable Rouge/NoBuildingAlternationPatternInRegexp\n      /#{Regexp.union(list)}\\b/\n      # rubocop:enable Rouge/NoBuildingAlternationPatternInRegexp\n    end\n\n    def self.get_keyword_set(name)\n      @keyword_sets ||= {}\n\n      @keyword_sets[name] ||= begin\n        # don't recurse past the base class\n        if self == RegexLexer\n          raise \"no keyword set #{name.inspect} defined - try defining one!\"\n        end\n\n        # Use memory sharing when applicable. If the method is not overridden,\n        # it is best to use the superclass method so the cache is shared.\n        set = if singleton_class.method_defined?(name, false)\n          public_send(name)\n        else\n          superclass.get_keyword_set(name)\n        end\n\n        raise InvalidKeywordSet.new(self) unless set.is_a?(Set)\n\n        set\n      end\n    end\n\n    def inspect_details\n      yield ' stack:['","sourceCodeStart":387,"sourceCodeEnd":423,"githubUrl":"https://github.com/rouge-ruby/rouge/blob/bd7dad7b0939c556e582a0370686f6fc022c8af5/lib/rouge/regex_lexer.rb#L387-L423","documentation":"Error \"no keyword set #{name.inspect} defined - try defining one!\" thrown in rouge-ruby/rouge.","triggerScenarios":"Thrown at lib/rouge/regex_lexer.rb:405 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"bd7dad7b0939c556e582a0370686f6fc022c8af5","analyzedAt":"2026-08-23T11:34:50.713Z","schemaVersion":2},"datasetVersion":"2026-08-23T16:17:53.355Z"}