view_body

func view_body(view: &DeclView) -> Syntax<Expr>?

The body block as expression syntax (braces included), preserving each token's provenance and hygiene context, so it can be spliced into an expression quotation.

View Source
pub func view_body(view: &DeclView) -> Syntax<Expr>? {
	if view.body_lower < 0 { return .none }
	let pieces: [SyntaxPiece] = []
	let index = view.body_lower
	loop index < view.body_upper {
		pieces.push(.token(copy_syntax_token(token: view.atoms[index])))
		index = index + 1
	}
	.some(Syntax<Expr>(raw: RawSyntax(category: .expr, pieces: pieces, trailing: "", group_when_spliced: true)))
}