{"record":{"id":"0e881c45cfa897e5","repo":"puppetlabs/puppet","slug":"enum-parameters-must-be-identifiers-or-strings","errorCode":null,"errorMessage":"Enum parameters must be identifiers or strings","messagePattern":"Enum parameters must be identifiers or strings","errorType":"exception","errorClass":"Puppet::ParseError","httpStatus":null,"severity":"error","filePath":"lib/puppet/pops/types/type_parser.rb","lineNumber":429,"sourceCode":"        end\n      end\n      create_resource(type, parameters)\n\n    when 'regexp'\n      # 1 parameter being a string, or regular expression\n      raise_invalid_parameters_error('Regexp', '1', parameters.size) unless parameters.size == 1\n      TypeFactory.regexp(parameters[0])\n\n    when 'enum'\n      # 1..m parameters being string\n      last = parameters.last\n      case_insensitive = false\n      if last == true || last == false\n        parameters = parameters[0...-1]\n        case_insensitive = last\n      end\n      raise_invalid_parameters_error('Enum', '1 or more', parameters.size) unless parameters.size >= 1\n      parameters.each { |p| raise Puppet::ParseError, _('Enum parameters must be identifiers or strings') unless p.is_a?(String) }\n      PEnumType.new(parameters, case_insensitive)\n\n    when 'pattern'\n      # 1..m parameters being strings or regular expressions\n      raise_invalid_parameters_error('Pattern', '1 or more', parameters.size) unless parameters.size >= 1\n      TypeFactory.pattern(*parameters)\n\n    when 'uri'\n      # 1 parameter which is a string or a URI\n      raise_invalid_parameters_error('URI', '1', parameters.size) unless parameters.size == 1\n      TypeFactory.uri(parameters[0])\n\n    when 'variant'\n      # 1..m parameters being strings or regular expressions\n      raise_invalid_parameters_error('Variant', '1 or more', parameters.size) unless parameters.size >= 1\n      parameters.each { |p| assert_type(ast, p) }\n      TypeFactory.variant(*parameters)\n","sourceCodeStart":411,"sourceCodeEnd":447,"githubUrl":"https://github.com/puppetlabs/puppet/blob/e227c27540975c25aa22d533a52424a9d2fc886a/lib/puppet/pops/types/type_parser.rb#L411-L447","documentation":"Error \"Enum parameters must be identifiers or strings\" thrown in puppetlabs/puppet.","triggerScenarios":"Thrown at lib/puppet/pops/types/type_parser.rb:429 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":"e227c27540975c25aa22d533a52424a9d2fc886a","analyzedAt":"2026-08-21T20:49:46.650Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}