25 llvm::raw_string_ostream ss(buf);
30 ss << func_name.
AsCString(
"<unnamed function>") <<
"(";
32 for (
size_t i = 0; i < param_types.size(); i++) {
35 ss << param_types[i].GetTypeName().AsCString(
"") <<
" ";
62 return llvm::cast<FortranFunction>(base_type);
static ConstString CreateFuncSignature(ConstString func_name, const llvm::SmallVectorImpl< CompilerType > ¶m_types, const llvm::SmallVectorImpl< llvm::StringRef > ¶m_names, CompilerType return_type)
This file defines the classes that describe the Fortran types.
Generic representation of a type in a programming language.
ConstString GetTypeName(bool BaseOnly=false) const
A uniqued constant string class.
const char * AsCString(const char *value_if_empty) const
Get the string value as a C string.
static FortranFunction * GetFunctionType(void *type)
CompilerType m_return_type
ConstString m_func_signature
FortranFunction(ConstString func_name, const llvm::SmallVectorImpl< CompilerType > ¶m_types, const llvm::SmallVectorImpl< llvm::StringRef > ¶m_names, CompilerType return_type)
llvm::SmallVector< CompilerType, 4 > m_param_types
FortranType(int32_t kind, uint64_t bitsize, const ConstString &name)
A class that represents a running process on the host machine.