66// ignore_for_file: deprecated_member_use 
77
88import  'package:analyzer/dart/constant/value.dart' ;
9- import  'package:analyzer/dart/element/element .dart' ;
9+ import  'package:analyzer/dart/element/element2 .dart' ;
1010import  'package:analyzer/dart/element/type.dart' ;
1111// ignore: implementation_imports 
1212import  'package:analyzer/src/dart/constant/value.dart'  show  DartObjectImpl;
@@ -22,35 +22,37 @@ import '../utils.dart';
2222/// **NOTE**: Some returned [Revivable]  instances are not representable as valid 
2323/// Dart source code (such as referencing private constructors). It is up to the 
2424/// build tool(s) using this library to surface error messages to the user. 
25- Revivable  reviveInstance (DartObject  object, [LibraryElement ?  origin]) {
25+ Revivable  reviveInstance (DartObject  object, [LibraryElement2 ?  origin]) {
2626  final  objectType =  object.type;
27-   Element ?  element =  objectType! .alias? .element ;
27+   Element2 ?  element =  objectType! .alias? .element2 ;
2828  if  (element ==  null ) {
2929    if  (objectType is  InterfaceType ) {
30-       element =  objectType.element ;
30+       element =  objectType.element3 ;
3131    } else  {
32-       element =  object.toFunctionValue ();
32+       element =  object.toFunctionValue2 ();
3333    }
3434  }
35-   origin ?? =  element! .library ;
35+   origin ?? =  element! .library2 ;
3636  var  url =  Uri .parse (urlOfElement (element! ));
37-   if  (element is  FunctionElement ) {
38-     return  Revivable ._(source:  url.removeFragment (), accessor:  element.name );
37+   if  (element is  TopLevelFunctionElement   ||  element  is   LocalFunctionElement ) {
38+     return  Revivable ._(source:  url.removeFragment (), accessor:  element.name3 ! );
3939  }
40-   if  (element is  MethodElement  &&  element.isStatic) {
40+ 
41+   if  (element is  MethodElement2  &&  element.isStatic) {
4142    return  Revivable ._(
4243      source:  url.removeFragment (),
43-       accessor:  '${element .enclosingElement3 .name }.${element .name }' ,
44+       accessor: 
45+           '${element .firstFragment .enclosingFragment !.name2 }.${element .name3 }' ,
4446    );
4547  }
4648
47-   if  (element is  InterfaceElement ) {
48-     for  (final  e in  element.fields .where (
49+   if  (element is  InterfaceElement2 ) {
50+     for  (final  e in  element.fields2 .where (
4951      (f) =>  f.isPublic &&  f.isConst &&  f.computeConstantValue () ==  object,
5052    )) {
5153      return  Revivable ._(
5254        source:  url.removeFragment (),
53-         accessor:  '${element .name }.${e .name }' ,
55+         accessor:  '${element .name3 }.${e .name3 }' ,
5456      );
5557    }
5658  }
@@ -64,13 +66,13 @@ Revivable reviveInstance(DartObject object, [LibraryElement? origin]) {
6466    return  ! result.isPrivate;
6567  }
6668
67-   for  (final  type in  origin! .definingCompilationUnit. classes) {
68-     for  (final  e in  type.fields .where (
69+   for  (final  type in  origin! .classes) {
70+     for  (final  e in  type.fields2 .where (
6971      (f) =>  f.isConst &&  f.computeConstantValue () ==  object,
7072    )) {
7173      final  result =  Revivable ._(
7274        source:  url.removeFragment (),
73-         accessor:  '${type .name }.${e .name }' ,
75+         accessor:  '${type .name3 }.${e .name3 }' ,
7476      );
7577      if  (tryResult (result)) {
7678        return  result;
@@ -79,23 +81,24 @@ Revivable reviveInstance(DartObject object, [LibraryElement? origin]) {
7981  }
8082  final  i =  (object as  DartObjectImpl ).getInvocation ();
8183  if  (i !=  null ) {
82-     url =  Uri .parse (urlOfElement (i.constructor.enclosingElement3));
84+     url =  Uri .parse (urlOfElement (i.constructor2.enclosingElement2));
85+     String  newToEmpty (String  string) =>  string ==  'new'  ?  ''  :  string;
8386    final  result =  Revivable ._(
8487      source:  url,
85-       accessor:  i.constructor.name ,
88+       accessor:  newToEmpty (i.constructor2.name3 ! ) ,
8689      namedArguments:  i.namedArguments,
8790      positionalArguments:  i.positionalArguments,
8891    );
8992    if  (tryResult (result)) {
9093      return  result;
9194    }
9295  }
93-   for  (final  e in  origin.definingCompilationUnit. topLevelVariables.where (
96+   for  (final  e in  origin.topLevelVariables.where (
9497    (f) =>  f.isConst &&  f.computeConstantValue () ==  object,
9598  )) {
9699    final  result =  Revivable ._(
97100      source:  Uri .parse (urlOfElement (origin)).replace (fragment:  '' ),
98-       accessor:  e.name ,
101+       accessor:  e.name3 ! ,
99102    );
100103    if  (tryResult (result)) {
101104      return  result;
0 commit comments