|
Yume
|
#include "overload.hpp"#include "ast/ast.hpp"#include "ty/compatibility.hpp"#include "ty/type.hpp"#include "util.hpp"#include <algorithm>#include <compare>#include <llvm/ADT/STLExtras.h>#include <llvm/Support/Casting.h>#include <llvm/Support/raw_ostream.h>#include <map>#include <stdexcept>#include <string>#include <utility>
Go to the source code of this file.
Namespaces | |
| namespace | yume |
| namespace | yume::semantic |
Functions | |
| static auto | yume::semantic::join_args (const auto &iter, auto fn, llvm::raw_ostream &stream=errs()) |
| static auto | yume::semantic::overload_name (const ast::AST *ast) -> std::string |
| static auto | yume::semantic::overload_receiver (const ast::AST *ast) -> optional< ty::Type > |
| static auto | yume::semantic::literal_cast (ast::AST &arg, ty::Type target_type) -> ty::Compat |
| auto | yume::semantic::parameter_count_matches (const vector< ast::AST * > &args, const Fn &fn) -> bool |
| static auto | yume::semantic::generic_base (optional< ty::Type > type) -> optional< ty::Type > |
| static auto | yume::semantic::cmp (bool a, bool b) -> std::strong_ordering |
| static auto | yume::semantic::compare_implicit_conversions (ty::Conv a, ty::Conv b) -> std::weak_ordering |
Variables | |
| static constexpr auto | yume::semantic::get_val_ty = [](const ast::AST* ast) { return ast->val_ty(); } |
| static constexpr auto | yume::semantic::indirect = [](const ty::Type& ty) { return &ty; } |