class SyntaxTree::BlockNode

def forced_brace_bounds?(q)

to go with the {..} bounds.
If we're the predicate of a loop or conditional, then we're going to have
def forced_brace_bounds?(q)
  previous = nil
  q.parents.any? do |parent|
    case parent
    when Paren, Statements
      # If we hit certain breakpoints then we know we're safe.
      return false
    when IfNode, IfOp, UnlessNode, WhileNode, UntilNode
      return true if parent.predicate == previous
    end
    previous = parent
    false
  end
end