@@ -363,155 +363,155 @@ private void Generate(SyntaxTree tree, Assembly? assembly, List<MetadataReferenc
363
363
//
364
364
//https://stackoverflow.com/a/72938702
365
365
CompilationUnitSyntax trueRoot = root . WithUsings
366
- (
367
- SyntaxFactory . List < UsingDirectiveSyntax >
368
- (
369
- new UsingDirectiveSyntax [ ]
370
- {
371
- SyntaxFactory . UsingDirective
372
366
(
373
- SyntaxFactory . AliasQualifiedName
367
+ SyntaxFactory . List < UsingDirectiveSyntax >
374
368
(
375
- SyntaxFactory . IdentifierName
376
- (
377
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
378
- ) ,
379
- SyntaxFactory . IdentifierName ( "System" )
380
- )
381
- )
382
- . WithGlobalKeyword
383
- (
384
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
385
- ) ,
386
- SyntaxFactory . UsingDirective
387
- (
388
- SyntaxFactory . QualifiedName
389
- (
390
- SyntaxFactory . QualifiedName
391
- (
392
- SyntaxFactory . AliasQualifiedName
369
+ new UsingDirectiveSyntax [ ]
370
+ {
371
+ SyntaxFactory . UsingDirective
393
372
(
394
- SyntaxFactory . IdentifierName
373
+ SyntaxFactory . AliasQualifiedName
395
374
(
396
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
397
- ) ,
398
- SyntaxFactory . IdentifierName ( "System" )
375
+ SyntaxFactory . IdentifierName
376
+ (
377
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
378
+ ) ,
379
+ SyntaxFactory . IdentifierName ( "System" )
380
+ )
381
+ )
382
+ . WithGlobalKeyword
383
+ (
384
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
399
385
) ,
400
- SyntaxFactory . IdentifierName ( "Collections" )
401
- ) ,
402
- SyntaxFactory . IdentifierName ( "Generic" )
403
- )
404
- )
405
- . WithGlobalKeyword
406
- (
407
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
408
- ) ,
409
- SyntaxFactory . UsingDirective
410
- (
411
- SyntaxFactory . QualifiedName
412
- (
413
- SyntaxFactory . AliasQualifiedName
414
- (
415
- SyntaxFactory . IdentifierName
386
+ SyntaxFactory . UsingDirective
387
+ (
388
+ SyntaxFactory . QualifiedName
389
+ (
390
+ SyntaxFactory . QualifiedName
391
+ (
392
+ SyntaxFactory . AliasQualifiedName
393
+ (
394
+ SyntaxFactory . IdentifierName
395
+ (
396
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
397
+ ) ,
398
+ SyntaxFactory . IdentifierName ( "System" )
399
+ ) ,
400
+ SyntaxFactory . IdentifierName ( "Collections" )
401
+ ) ,
402
+ SyntaxFactory . IdentifierName ( "Generic" )
403
+ )
404
+ )
405
+ . WithGlobalKeyword
416
406
(
417
407
SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
418
408
) ,
419
- SyntaxFactory . IdentifierName ( "System" )
420
- ) ,
421
- SyntaxFactory . IdentifierName ( "IO" )
422
- )
423
- )
424
- . WithGlobalKeyword
425
- (
426
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
427
- ) ,
428
- SyntaxFactory . UsingDirective
429
- (
430
- SyntaxFactory . QualifiedName
431
- (
432
- SyntaxFactory . AliasQualifiedName
433
- (
434
- SyntaxFactory . IdentifierName
409
+ SyntaxFactory . UsingDirective
410
+ (
411
+ SyntaxFactory . QualifiedName
412
+ (
413
+ SyntaxFactory . AliasQualifiedName
414
+ (
415
+ SyntaxFactory . IdentifierName
416
+ (
417
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
418
+ ) ,
419
+ SyntaxFactory . IdentifierName ( "System" )
420
+ ) ,
421
+ SyntaxFactory . IdentifierName ( "IO" )
422
+ )
423
+ )
424
+ . WithGlobalKeyword
435
425
(
436
426
SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
437
427
) ,
438
- SyntaxFactory . IdentifierName ( "System" )
439
- ) ,
440
- SyntaxFactory . IdentifierName ( "Linq" )
441
- )
442
- )
443
- . WithGlobalKeyword
444
- (
445
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
446
- ) ,
447
- SyntaxFactory . UsingDirective
448
- (
449
- SyntaxFactory . QualifiedName
450
- (
451
- SyntaxFactory . QualifiedName
452
- (
453
- SyntaxFactory . AliasQualifiedName
428
+ SyntaxFactory . UsingDirective
454
429
(
455
- SyntaxFactory . IdentifierName
430
+ SyntaxFactory . QualifiedName
456
431
(
457
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
458
- ) ,
459
- SyntaxFactory . IdentifierName ( "System" )
432
+ SyntaxFactory . AliasQualifiedName
433
+ (
434
+ SyntaxFactory . IdentifierName
435
+ (
436
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
437
+ ) ,
438
+ SyntaxFactory . IdentifierName ( "System" )
439
+ ) ,
440
+ SyntaxFactory . IdentifierName ( "Linq" )
441
+ )
442
+ )
443
+ . WithGlobalKeyword
444
+ (
445
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
460
446
) ,
461
- SyntaxFactory . IdentifierName ( "Net" )
462
- ) ,
463
- SyntaxFactory . IdentifierName ( "Http" )
464
- )
465
- )
466
- . WithGlobalKeyword
467
- (
468
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
469
- ) ,
470
- SyntaxFactory . UsingDirective
471
- (
472
- SyntaxFactory . QualifiedName
473
- (
474
- SyntaxFactory . AliasQualifiedName
475
- (
476
- SyntaxFactory . IdentifierName
447
+ SyntaxFactory . UsingDirective
448
+ (
449
+ SyntaxFactory . QualifiedName
450
+ (
451
+ SyntaxFactory . QualifiedName
452
+ (
453
+ SyntaxFactory . AliasQualifiedName
454
+ (
455
+ SyntaxFactory . IdentifierName
456
+ (
457
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
458
+ ) ,
459
+ SyntaxFactory . IdentifierName ( "System" )
460
+ ) ,
461
+ SyntaxFactory . IdentifierName ( "Net" )
462
+ ) ,
463
+ SyntaxFactory . IdentifierName ( "Http" )
464
+ )
465
+ )
466
+ . WithGlobalKeyword
477
467
(
478
468
SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
479
469
) ,
480
- SyntaxFactory . IdentifierName ( "System" )
481
- ) ,
482
- SyntaxFactory . IdentifierName ( "Threading" )
483
- )
484
- )
485
- . WithGlobalKeyword
486
- (
487
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
488
- ) ,
489
- SyntaxFactory . UsingDirective
490
- (
491
- SyntaxFactory . QualifiedName
492
- (
493
- SyntaxFactory . QualifiedName
494
- (
495
- SyntaxFactory . AliasQualifiedName
470
+ SyntaxFactory . UsingDirective
496
471
(
497
- SyntaxFactory . IdentifierName
472
+ SyntaxFactory . QualifiedName
498
473
(
499
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
500
- ) ,
501
- SyntaxFactory . IdentifierName ( "System" )
474
+ SyntaxFactory . AliasQualifiedName
475
+ (
476
+ SyntaxFactory . IdentifierName
477
+ (
478
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
479
+ ) ,
480
+ SyntaxFactory . IdentifierName ( "System" )
481
+ ) ,
482
+ SyntaxFactory . IdentifierName ( "Threading" )
483
+ )
484
+ )
485
+ . WithGlobalKeyword
486
+ (
487
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
502
488
) ,
503
- SyntaxFactory . IdentifierName ( "Threading" )
504
- ) ,
505
- SyntaxFactory . IdentifierName ( "Tasks" )
489
+ SyntaxFactory . UsingDirective
490
+ (
491
+ SyntaxFactory . QualifiedName
492
+ (
493
+ SyntaxFactory . QualifiedName
494
+ (
495
+ SyntaxFactory . AliasQualifiedName
496
+ (
497
+ SyntaxFactory . IdentifierName
498
+ (
499
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
500
+ ) ,
501
+ SyntaxFactory . IdentifierName ( "System" )
502
+ ) ,
503
+ SyntaxFactory . IdentifierName ( "Threading" )
504
+ ) ,
505
+ SyntaxFactory . IdentifierName ( "Tasks" )
506
+ )
507
+ )
508
+ . WithGlobalKeyword
509
+ (
510
+ SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
511
+ )
512
+ }
506
513
)
507
- )
508
- . WithGlobalKeyword
509
- (
510
- SyntaxFactory . Token ( SyntaxKind . GlobalKeyword )
511
- )
512
- }
513
- )
514
- ) . AddUsings ( oldUsing ) ;
514
+ ) . AddUsings ( oldUsing ) ;
515
515
516
516
if ( _Options . NormalizeWhitespace )
517
517
trueRoot = trueRoot . NormalizeWhitespace ( ) ;
@@ -599,23 +599,30 @@ private void Generate(SyntaxTree tree, Assembly? assembly, List<MetadataReferenc
599
599
//https://stackoverflow.com/a/12073675
600
600
List < MetadataReference > trueReferences = new ( ) ;
601
601
602
- foreach ( MetadataReference item in references )
602
+ if ( refs == null )
603
603
{
604
- bool found = false ;
605
- foreach ( MetadataReference resultItem in trueReferences )
604
+ foreach ( MetadataReference item in references )
606
605
{
607
- if ( item . Display == null )
608
- continue ;
606
+ bool found = false ;
607
+ foreach ( MetadataReference resultItem in trueReferences )
608
+ {
609
+ if ( item . Display == null )
610
+ continue ;
609
611
610
- if ( resultItem . Display == item . Display )
611
- found = true ;
612
- }
612
+ if ( resultItem . Display == item . Display )
613
+ found = true ;
614
+ }
613
615
614
- if ( ! found )
615
- {
616
- trueReferences . Add ( item ) ;
616
+ if ( ! found )
617
+ {
618
+ trueReferences . Add ( item ) ;
619
+ }
617
620
}
618
621
}
622
+ else
623
+ {
624
+ trueReferences = references ;
625
+ }
619
626
620
627
if ( _Options . Debug )
621
628
{
0 commit comments