Rename "generic instance" to "specific" throughout the toolchain. (#4165)

As discussed in toolchain meeting, we want to avoid overloading the
meaning of "instance", and "specific" was the best name we found. It's a
little unorthodox and inventive, but hopefully over time will become as
unsurprising as the term "generic" is.
This commit is contained in:
Richard Smith
2024-07-25 16:42:01 +00:00
committed by GitHub
parent 70c20be91b
commit 3cb769a053
41 changed files with 370 additions and 396 deletions
+4 -4
View File
@@ -1119,7 +1119,7 @@ CARBON_DIAGNOSTIC(InCallToFunction, Note, "Calling function declared here.");
// Convert the object argument in a method call to match the `self` parameter.
static auto ConvertSelf(Context& context, SemIR::LocId call_loc_id,
SemIR::InstId callee_id,
SemIR::GenericInstanceId callee_specific_id,
SemIR::SpecificId callee_specific_id,
std::optional<SemIR::AddrPattern> addr_pattern,
SemIR::InstId self_param_id, SemIR::Param self_param,
SemIR::InstId self_id) -> SemIR::InstId {
@@ -1168,7 +1168,7 @@ static auto ConvertSelf(Context& context, SemIR::LocId call_loc_id,
return ConvertToValueOfType(
context, call_loc_id, self_or_addr_id,
SemIR::GetTypeInInstance(context.sem_ir(), callee_specific_id,
SemIR::GetTypeInSpecific(context.sem_ir(), callee_specific_id,
self_param.type_id));
}
@@ -1177,7 +1177,7 @@ auto ConvertCallArgs(Context& context, SemIR::LocId call_loc_id,
llvm::ArrayRef<SemIR::InstId> arg_refs,
SemIR::InstId return_storage_id,
const SemIR::EntityWithParamsBase& callee,
SemIR::GenericInstanceId callee_specific_id)
SemIR::SpecificId callee_specific_id)
-> SemIR::InstBlockId {
auto implicit_param_refs =
context.inst_blocks().GetOrEmpty(callee.implicit_param_refs_id);
@@ -1238,7 +1238,7 @@ auto ConvertCallArgs(Context& context, SemIR::LocId call_loc_id,
diag_param_index = i;
auto param_type_id =
SemIR::GetTypeInInstance(context.sem_ir(), callee_specific_id,
SemIR::GetTypeInSpecific(context.sem_ir(), callee_specific_id,
context.insts().Get(param_id).type_id());
// TODO: Convert to the proper expression category. For now, we assume
// parameters are all `let` bindings.