9#ifndef FORTRAN_EVALUATE_FORMATTING_H_
10#define FORTRAN_EVALUATE_FORMATTING_H_
22#include "flang/Common/indirection.h"
23#include "llvm/Support/raw_ostream.h"
30auto operator<<(llvm::raw_ostream &o,
const A &x) ->
decltype(x.AsFortran(o)) {
31 return x.AsFortran(o);
35auto operator<<(llvm::raw_ostream &o,
const A &x)
36 ->
decltype(o << x.AsFortran()) {
37 return o << x.AsFortran();
40template <
typename A,
bool COPYABLE>
43 ->
decltype(o << x.value()) {
44 return o << x.value();
48auto operator<<(llvm::raw_ostream &o,
const std::optional<A> &x)
49 ->
decltype(o << *x) {
Definition: indirection.h:31