9#include <llvm/Support/raw_ostream.h>
32 void dump(llvm::raw_ostream& stream)
const;
41 unique_ptr<diagnostic::StringNotesHolder>
notes = std::make_unique<diagnostic::StringNotesHolder>();
44 void dump(llvm::raw_ostream& stream,
bool hide_invalid =
false)
const;
All nodes in the AST tree of the program inherit from this class.
A function declaration in the compiler.
auto ast() const -> const ast::Stmt &
Substitutions subs
If this is an instantiation of a template, a mapping between type variables and their substitutions.
Represents a location in source code, as a range starting at a line and column and ending at some oth...
unique_ptr< diagnostic::StringNotesHolder > notes
auto is_valid_overload(Overload &overload) -> bool
void determine_valid_overloads()
vector< Overload > overloads
auto try_best_viable_overload() const -> const Overload *
vector< ast::AST * > args
void dump(llvm::raw_ostream &stream, bool hide_invalid=false) const
auto best_viable_overload() const -> Overload
auto empty() const -> bool
vector< ty::Compat > compatibilities
Overload(Fn *fn) noexcept
auto location() const -> Loc
void dump(llvm::raw_ostream &stream) const
auto better_candidate_than(Overload other) const -> bool