
[Visualizer]

llvm::SmallVector<*,*>{
	preview (
		#(
			"[",
			($T1*)$e.EndX - ($T1*)$e.BeginX,
			"](",
			#array(
				expr: (($T1*)$e.BeginX)[$i],
				size: ($T1*)$e.EndX - ($T1*)$e.BeginX
			),
			")"
		)
	)

	children (
		#(
			#([size] : ($T1*)$e.EndX - ($T1*)$e.BeginX),
			#([capacity] : ($T1*)$e.CapacityX - ($T1*)$e.BeginX),
			#array(
				expr: (($T1*)$e.BeginX)[$i],
				size: ($T1*)$e.EndX - ($T1*)$e.BeginX
			)
		)
	)
}

llvm::StringRef{
	preview ([$e.Data,s])
	stringview ([$e.Data,sb])

	children (
		#(
			#([size] : $e.Length),
			#array(expr: $e.Data[$i], size: $e.Length)
		)
	)
}

clang::Token{
	preview((clang::tok::TokenKind)(int)$e.Kind)
}