Lines Matching refs:field
35 void TransformOptionalFieldTypeAnnotation(checker::ETSChecker *const checker, ir::ClassProperty *const field)
37 if (!field->IsOptionalDeclaration()) {
41 if (field->IsETSUnionType()) {
43 auto unionTypes = field->AsETSUnionType()->Types();
51 ArenaVector<ir::TypeNode *> types(field->AsETSUnionType()->Types(), checker->Allocator()->Adapter());
54 field->SetTypeAnnotation(unionType);
58 types.push_back(field->TypeAnnotation());
61 field->SetTypeAnnotation(unionType);
63 field->ClearModifier(ir::ModifierFlags::OPTIONAL);
68 static ir::MethodDefinition *GenerateGetterOrSetter(checker::ETSChecker *const checker, ir::ClassProperty *const field,
71 auto classScope = NearestScope(field);
81 TransformOptionalFieldTypeAnnotation(checker, field);
85 auto paramIdent = field->Key()->AsIdentifier()->Clone(checker->Allocator(), nullptr);
86 paramIdent->SetTsTypeAnnotation(field->TypeAnnotation()->Clone(checker->Allocator(), nullptr));
99 auto signature = ir::FunctionSignature(nullptr, std::move(params), isSetter ? nullptr : field->TypeAnnotation());
107 func->SetRange(field->Range());
111 auto const &name = field->Key()->AsIdentifier()->Name();
126 method->SetRange(field->Range());