Rename Ptr<T> to Nonnull<T*> (#832)

Note that ptr.h also includes an enable_if change, to help avoid https://bugs.llvm.org/show_bug.cgi?id=51881
This commit is contained in:
Jon Meow
2021-09-16 19:22:57 -07:00
committed by GitHub
parent 5e66248db0
commit 56dc4ae375
35 changed files with 584 additions and 535 deletions
@@ -15,8 +15,9 @@ namespace Carbon {
// Adds builtins, currently only Print(). Note Print() is experimental, not
// standardized, but is made available for printing state in tests.
static void AddIntrinsics(Ptr<Arena> arena,
std::vector<Ptr<const Declaration>>* declarations) {
static void AddIntrinsics(
Nonnull<Arena*> arena,
std::vector<Nonnull<const Declaration*>>* declarations) {
SourceLocation loc("<intrinsic>", 0);
std::vector<TuplePattern::Field> print_fields = {TuplePattern::Field(
"0",
@@ -36,7 +37,7 @@ static void AddIntrinsics(Ptr<Arena> arena,
declarations->insert(declarations->begin(), print);
}
void ExecProgram(Ptr<Arena> arena, AST ast) {
void ExecProgram(Nonnull<Arena*> arena, AST ast) {
AddIntrinsics(arena, &ast.declarations);
if (tracing_output) {
llvm::outs() << "********** source program **********\n";
@@ -49,7 +50,7 @@ void ExecProgram(Ptr<Arena> arena, AST ast) {
TypeChecker::TypeCheckContext p = type_checker.TopLevel(ast.declarations);
TypeEnv top = p.types;
Env ct_top = p.values;
std::vector<Ptr<const Declaration>> new_decls;
std::vector<Nonnull<const Declaration*>> new_decls;
for (const auto decl : ast.declarations) {
new_decls.push_back(type_checker.MakeTypeChecked(decl, top, ct_top));
}