Yume
Classes | Namespaces | Typedefs
vals.hpp File Reference
#include "ast/ast.hpp"
#include "ast/parser.hpp"
#include "diagnostic/notes.hpp"
#include "token.hpp"
#include "ty/substitution.hpp"
#include "ty/type.hpp"
#include "util.hpp"
#include <algorithm>
#include <compare>
#include <functional>
#include <iosfwd>
#include <llvm/Support/Casting.h>
#include <llvm/Support/raw_ostream.h>
#include <map>
#include <memory>
#include <stdexcept>
#include <string>
#include <utility>
#include <variant>
#include <vector>
Include dependency graph for vals.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  yume::FnArg
 
struct  yume::Def
 
struct  yume::Fn
 A function declaration in the compiler. More...
 
struct  yume::VTableEntry
 
struct  yume::Struct
 A struct declaration in the compiler. More...
 
struct  yume::Const
 A constant declaration in the compiler. More...
 
struct  yume::DeclLike
 A common base between declarations in the compiler: Fn, Struct and Const. Its value may also be absent (std::monostate). More...
 
struct  yume::Val
 A value of a complied expression. More...
 
struct  yume::InScope
 A local variable in function scope. Used to track destructing when the scope ends. More...
 
struct  yume::SourceFile
 A source file with its associated Syntax Tree. More...
 

Namespaces

namespace  llvm
 
namespace  yume
 

Typedefs

using yume::Def_t = visitable_variant< ast::FnDecl *, ast::CtorDecl *, ast::LambdaExpr * >
 
using yume::DeclLike_t = visitable_variant< std::monostate, Fn *, Struct *, Const * >