roc/test/snapshots/expr/s_quote_pattern.md
2025-10-16 07:00:23 -07:00

1.3 KiB

META

description=Single quote literal's in patterns
type=expr

SOURCE

match ... {
	['#'] => ...
	['a', 'b'] => ...
	_ => ...
}

EXPECTED

NIL

PROBLEMS

NIL

TOKENS

KwMatch,TripleDot,OpenCurly,
OpenSquare,SingleQuote,CloseSquare,OpFatArrow,TripleDot,
OpenSquare,SingleQuote,Comma,SingleQuote,CloseSquare,OpFatArrow,TripleDot,
Underscore,OpFatArrow,TripleDot,
CloseCurly,
EndOfFile,

PARSE

(e-match
	(e-ellipsis)
	(branches
		(branch
			(p-list
				(p-single-quote (raw "'#'")))
			(e-ellipsis))
		(branch
			(p-list
				(p-single-quote (raw "'a'"))
				(p-single-quote (raw "'b'")))
			(e-ellipsis))
		(branch
			(p-underscore)
			(e-ellipsis))))

FORMATTED

NO CHANGE

CANONICALIZE

(e-match
	(match
		(cond
			(e-not-implemented))
		(branches
			(branch
				(patterns
					(pattern (degenerate false)
						(p-list
							(patterns
								(p-num (value "35"))))))
				(value
					(e-not-implemented)))
			(branch
				(patterns
					(pattern (degenerate false)
						(p-list
							(patterns
								(p-num (value "97"))
								(p-num (value "98"))))))
				(value
					(e-not-implemented)))
			(branch
				(patterns
					(pattern (degenerate false)
						(p-underscore)))
				(value
					(e-not-implemented))))))

TYPES

(expr (type "_a"))