{"record":{"id":"1ed6bb79e81616c0","repo":"rouge-ruby/rouge","slug":"context-invalid-keyword-set-keys-must-be-an","errorCode":null,"errorMessage":"#{@context}: Invalid keyword set: Keys must be an instance of Set.","messagePattern":"#(.+?): Invalid keyword set: Keys must be an instance of Set\\.","errorType":"exception","errorClass":"InvalidKeywordSet","httpStatus":null,"severity":"error","filePath":"lib/rouge/regex_lexer.rb","lineNumber":174,"sourceCode":"          @covering_regex = covering_regex\n          @transform = nil\n          @default = nil\n          @group = 0\n          @sets = []\n          instance_eval(&defn)\n        end\n\n        def transform(&b)\n          @mapper = b\n        end\n\n        def group(g)\n          @group = g\n        end\n\n        def rule(keyword_set, *args, &action)\n          unless keyword_set.is_a?(Set) || keyword_set.is_a?(Symbol)\n            raise InvalidKeywordSet.new(@lexer_class)\n          end\n\n          raise InvalidRule if action && args.any?\n          action ||= Rule.make_action(@covering_regex, *args)\n\n          @sets << [keyword_set, action]\n        end\n\n        def default(*args, &block)\n          @default = block || Rule.make_action(@covering_regex, *args)\n        end\n\n        def to_proc\n          mapper = @mapper\n          sets = @sets\n          default = @default\n          group = @group\n","sourceCodeStart":156,"sourceCodeEnd":192,"githubUrl":"https://github.com/rouge-ruby/rouge/blob/bd7dad7b0939c556e582a0370686f6fc022c8af5/lib/rouge/regex_lexer.rb#L156-L192","documentation":"Error \"#{@context}: Invalid keyword set: Keys must be an instance of Set.\" thrown in rouge-ruby/rouge.","triggerScenarios":"Thrown at lib/rouge/regex_lexer.rb:174 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"}