copyClassMember function

String copyClassMember(
  1. ClassMember? member,
  2. String body
)

Returns a copy of a class member declaration with body as a new implementation.

Currently only supports:

  • FieldDeclaration (single variable only)
  • MethodDeclaration (getter, setter, and methods)

Implementation

String copyClassMember(ClassMember? member, String body) {
  if (member is FieldDeclaration) return _copyFieldDeclaration(member, body);
  if (member is MethodDeclaration) {
    if (member.isGetter) return _copyGetterDeclaration(member, body);
    if (member.isSetter) return _copySetterDeclaration(member, body);
    return _copyMethodDeclaration(member, body);
  }
  throw UnsupportedError(
      'Unsupported class member type: ${member.runtimeType}. '
      'Only FieldDeclaration and MethodDeclaration are supported.');
}