use super::{DiagnosticMessage};
impl std::fmt::Debug for DiagnosticMessage {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
if let Some(inner) = self.as_fraction_after_numeric() {
return write!(f, "FractionAfterNumeric({:?})", inner)
}
if let Some(inner) = self.as_no_digits_after_dot() {
return write!(f, "NoDigitsAfterDot({:?})", inner)
}
if let Some(inner) = self.as_unknown_type_of_percent_string() {
return write!(f, "UnknownTypeOfPercentString({:?})", inner)
}
if let Some(inner) = self.as_numeric_literal_without_digits() {
return write!(f, "NumericLiteralWithoutDigits({:?})", inner)
}
if let Some(inner) = self.as_unterminated_list() {
return write!(f, "UnterminatedList({:?})", inner)
}
if let Some(inner) = self.as_unterminated_regexp() {
return write!(f, "UnterminatedRegexp({:?})", inner)
}
if let Some(inner) = self.as_unterminated_string() {
return write!(f, "UnterminatedString({:?})", inner)
}
if let Some(inner) = self.as_unterminated_quoted_string() {
return write!(f, "UnterminatedQuotedString({:?})", inner)
}
if let Some(inner) = self.as_invalid_unicode_escape() {
return write!(f, "InvalidUnicodeEscape({:?})", inner)
}
if let Some(inner) = self.as_too_large_unicode_codepoint() {
return write!(f, "TooLargeUnicodeCodepoint({:?})", inner)
}
if let Some(inner) = self.as_invalid_unicode_codepoint() {
return write!(f, "InvalidUnicodeCodepoint({:?})", inner)
}
if let Some(inner) = self.as_multiple_codepoint_at_single_char() {
return write!(f, "MultipleCodepointAtSingleChar({:?})", inner)
}
if let Some(inner) = self.as_invalid_escape_character() {
return write!(f, "InvalidEscapeCharacter({:?})", inner)
}
if let Some(inner) = self.as_invalid_hex_escape() {
return write!(f, "InvalidHexEscape({:?})", inner)
}
if let Some(inner) = self.as_unterminated_heredoc() {
return write!(f, "UnterminatedHeredoc({:?})", inner)
}
if let Some(inner) = self.as_unterminated_heredoc_id() {
return write!(f, "UnterminatedHeredocId({:?})", inner)
}
if let Some(inner) = self.as_slash_r_at_middle_of_line() {
return write!(f, "SlashRAtMiddleOfLine({:?})", inner)
}
if let Some(inner) = self.as_d_star_interpreted_as_arg_prefix() {
return write!(f, "DStarInterpretedAsArgPrefix({:?})", inner)
}
if let Some(inner) = self.as_star_interpreted_as_arg_prefix() {
return write!(f, "StarInterpretedAsArgPrefix({:?})", inner)
}
if let Some(inner) = self.as_ampersand_interpreted_as_arg_prefix() {
return write!(f, "AmpersandInterpretedAsArgPrefix({:?})", inner)
}
if let Some(inner) = self.as_triple_dot_at_eol() {
return write!(f, "TripleDotAtEol({:?})", inner)
}
if let Some(inner) = self.as_parentheses_iterpreted_as_arglist() {
return write!(f, "ParenthesesIterpretedAsArglist({:?})", inner)
}
if let Some(inner) = self.as_ambiguous_first_argument() {
return write!(f, "AmbiguousFirstArgument({:?})", inner)
}
if let Some(inner) = self.as_ambiguous_operator() {
return write!(f, "AmbiguousOperator({:?})", inner)
}
if let Some(inner) = self.as_invalid_character_syntax() {
return write!(f, "InvalidCharacterSyntax({:?})", inner)
}
if let Some(inner) = self.as_invalid_octal_digit() {
return write!(f, "InvalidOctalDigit({:?})", inner)
}
if let Some(inner) = self.as_trailing_char_in_number() {
return write!(f, "TrailingCharInNumber({:?})", inner)
}
if let Some(inner) = self.as_embedded_document_meets_eof() {
return write!(f, "EmbeddedDocumentMeetsEof({:?})", inner)
}
if let Some(inner) = self.as_invalid_char() {
return write!(f, "InvalidChar({:?})", inner)
}
if let Some(inner) = self.as_incomplete_character_syntax() {
return write!(f, "IncompleteCharacterSyntax({:?})", inner)
}
if let Some(inner) = self.as_gvar_without_id() {
return write!(f, "GvarWithoutId({:?})", inner)
}
if let Some(inner) = self.as_invalid_gvar_name() {
return write!(f, "InvalidGvarName({:?})", inner)
}
if let Some(inner) = self.as_ivar_without_id() {
return write!(f, "IvarWithoutId({:?})", inner)
}
if let Some(inner) = self.as_invalid_ivar_name() {
return write!(f, "InvalidIvarName({:?})", inner)
}
if let Some(inner) = self.as_cvar_without_id() {
return write!(f, "CvarWithoutId({:?})", inner)
}
if let Some(inner) = self.as_invalid_cvar_name() {
return write!(f, "InvalidCvarName({:?})", inner)
}
if let Some(inner) = self.as_unknown_regex_options() {
return write!(f, "UnknownRegexOptions({:?})", inner)
}
if let Some(inner) = self.as_unterminated_unicode_escape() {
return write!(f, "UnterminatedUnicodeEscape({:?})", inner)
}
if let Some(inner) = self.as_encoding_error() {
return write!(f, "EncodingError({:?})", inner)
}
if let Some(inner) = self.as_invalid_multibyte_char() {
return write!(f, "InvalidMultibyteChar({:?})", inner)
}
if let Some(inner) = self.as_ambiguous_ternary_operator() {
return write!(f, "AmbiguousTernaryOperator({:?})", inner)
}
if let Some(inner) = self.as_ambiguous_regexp() {
return write!(f, "AmbiguousRegexp({:?})", inner)
}
if let Some(inner) = self.as_else_without_rescue() {
return write!(f, "ElseWithoutRescue({:?})", inner)
}
if let Some(inner) = self.as_begin_not_at_top_level() {
return write!(f, "BeginNotAtTopLevel({:?})", inner)
}
if let Some(inner) = self.as_alias_nth_ref() {
return write!(f, "AliasNthRef({:?})", inner)
}
if let Some(inner) = self.as_csend_inside_masgn() {
return write!(f, "CsendInsideMasgn({:?})", inner)
}
if let Some(inner) = self.as_class_or_module_name_must_be_constant() {
return write!(f, "ClassOrModuleNameMustBeConstant({:?})", inner)
}
if let Some(inner) = self.as_endless_setter_definition() {
return write!(f, "EndlessSetterDefinition({:?})", inner)
}
if let Some(inner) = self.as_unexpected_token() {
return write!(f, "UnexpectedToken({:?})", inner)
}
if let Some(inner) = self.as_class_definition_in_method_body() {
return write!(f, "ClassDefinitionInMethodBody({:?})", inner)
}
if let Some(inner) = self.as_module_definition_in_method_body() {
return write!(f, "ModuleDefinitionInMethodBody({:?})", inner)
}
if let Some(inner) = self.as_invalid_return_in_class_or_module_body() {
return write!(f, "InvalidReturnInClassOrModuleBody({:?})", inner)
}
if let Some(inner) = self.as_const_argument() {
return write!(f, "ConstArgument({:?})", inner)
}
if let Some(inner) = self.as_ivar_argument() {
return write!(f, "IvarArgument({:?})", inner)
}
if let Some(inner) = self.as_gvar_argument() {
return write!(f, "GvarArgument({:?})", inner)
}
if let Some(inner) = self.as_cvar_argument() {
return write!(f, "CvarArgument({:?})", inner)
}
if let Some(inner) = self.as_no_such_local_variable() {
return write!(f, "NoSuchLocalVariable({:?})", inner)
}
if let Some(inner) = self.as_ordinary_param_defined() {
return write!(f, "OrdinaryParamDefined({:?})", inner)
}
if let Some(inner) = self.as_numparam_used() {
return write!(f, "NumparamUsed({:?})", inner)
}
if let Some(inner) = self.as_tok_at_eol_without_expression() {
return write!(f, "TokAtEolWithoutExpression({:?})", inner)
}
if let Some(inner) = self.as_end_in_method() {
return write!(f, "EndInMethod({:?})", inner)
}
if let Some(inner) = self.as_comparison_after_comparison() {
return write!(f, "ComparisonAfterComparison({:?})", inner)
}
if let Some(inner) = self.as_circular_argument_reference() {
return write!(f, "CircularArgumentReference({:?})", inner)
}
if let Some(inner) = self.as_dynamic_constant_assignment() {
return write!(f, "DynamicConstantAssignment({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_self() {
return write!(f, "CantAssignToSelf({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_nil() {
return write!(f, "CantAssignToNil({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_true() {
return write!(f, "CantAssignToTrue({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_false() {
return write!(f, "CantAssignToFalse({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_file() {
return write!(f, "CantAssignToFile({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_line() {
return write!(f, "CantAssignToLine({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_encoding() {
return write!(f, "CantAssignToEncoding({:?})", inner)
}
if let Some(inner) = self.as_cant_assign_to_numparam() {
return write!(f, "CantAssignToNumparam({:?})", inner)
}
if let Some(inner) = self.as_cant_set_variable() {
return write!(f, "CantSetVariable({:?})", inner)
}
if let Some(inner) = self.as_block_given_to_yield() {
return write!(f, "BlockGivenToYield({:?})", inner)
}
if let Some(inner) = self.as_block_and_block_arg_given() {
return write!(f, "BlockAndBlockArgGiven({:?})", inner)
}
if let Some(inner) = self.as_symbol_literal_with_interpolation() {
return write!(f, "SymbolLiteralWithInterpolation({:?})", inner)
}
if let Some(inner) = self.as_reserved_for_numparam() {
return write!(f, "ReservedForNumparam({:?})", inner)
}
if let Some(inner) = self.as_key_must_be_valid_as_local_variable() {
return write!(f, "KeyMustBeValidAsLocalVariable({:?})", inner)
}
if let Some(inner) = self.as_duplicate_variable_name() {
return write!(f, "DuplicateVariableName({:?})", inner)
}
if let Some(inner) = self.as_duplicate_key_name() {
return write!(f, "DuplicateKeyName({:?})", inner)
}
if let Some(inner) = self.as_singleton_literal() {
return write!(f, "SingletonLiteral({:?})", inner)
}
if let Some(inner) = self.as_nth_ref_is_too_big() {
return write!(f, "NthRefIsTooBig({:?})", inner)
}
if let Some(inner) = self.as_duplicated_argument_name() {
return write!(f, "DuplicatedArgumentName({:?})", inner)
}
if let Some(inner) = self.as_regex_error() {
return write!(f, "RegexError({:?})", inner)
}
if let Some(inner) = self.as_invalid_symbol() {
return write!(f, "InvalidSymbol({:?})", inner)
}
if let Some(inner) = self.as_void_value_expression() {
return write!(f, "VoidValueExpression({:?})", inner)
}
panic!("unrecognized diagnostic message type")
}
}