@@ -479,6 +479,92 @@ public int this[double index]
479
479
}" ) ;
480
480
}
481
481
482
+ [ Fact ]
483
+ public async Task TestParameterizedPropertyAssignmentOperatorsAsync ( )
484
+ {
485
+ await TestConversionVisualBasicToCSharpAsync ( @"
486
+ Public Class TestClass
487
+ Private _items As Integer() = New Integer() {1}
488
+ Public Property Item(index As Integer) As Integer
489
+ Get
490
+ Return _items(index)
491
+ End Get
492
+ Set(value As Integer)
493
+ _items(index) = value
494
+ End Set
495
+ End Property
496
+
497
+ Private _strItems As String() = New String() {""Hello""}
498
+ Public Property StrItem(index As Integer) As String
499
+ Get
500
+ Return _strItems(index)
501
+ End Get
502
+ Set(value As String)
503
+ _strItems(index) = value
504
+ End Set
505
+ End Property
506
+
507
+ Public Sub AllAssignmentOperators()
508
+ Item(0) += 2
509
+ Item(0) *= 2
510
+ Item(0) ^= 2
511
+ Item(0) /= 2
512
+ Item(0) -= 2
513
+ Item(0) \= 2
514
+ Item(0) <<= 2
515
+ Item(0) >>= 2
516
+ StrItem(0) &= "" World""
517
+
518
+ Item(0) = Item(0) + 2
519
+ Item(0) = Item(0) * 2
520
+ Item(0) = Item(0) ^ 2
521
+ Item(0) = Item(0) / 2
522
+ Item(0) = Item(0) - 2
523
+ Item(0) = Item(0) \ 2
524
+ Item(0) = Item(0) << 2
525
+ Item(0) = Item(0) >> 2
526
+ StrItem(0) = StrItem(0) & "" World""
527
+ End Sub
528
+ End Class" , @"
529
+ using System;
530
+
531
+ public partial class TestClass
532
+ {
533
+ private int[] _items = new int[] { 1 };
534
+ public int get_Item(int index)
535
+ {
536
+ return _items[index];
537
+ }
538
+ public void set_Item(int index, int value)
539
+ {
540
+ _items[index] = value;
541
+ }
542
+
543
+ private string[] _strItems = new string[] { ""Hello"" };
544
+ public string get_StrItem(int index)
545
+ {
546
+ return _strItems[index];
547
+ }
548
+ public void set_StrItem(int index, string value)
549
+ {
550
+ _strItems[index] = value;
551
+ }
552
+
553
+ public void AllAssignmentOperators()
554
+ {
555
+ set_Item(0, get_Item(0) + 2);
556
+ set_Item(0, get_Item(0) * 2);
557
+ set_Item(0, (int)Math.Round(Math.Pow(get_Item(0), 2d)));
558
+ set_Item(0, (int)Math.Round(get_Item(0) / 2d));
559
+ set_Item(0, get_Item(0) - 2);
560
+ set_Item(0, get_Item(0) / 2);
561
+ set_Item(0, get_Item(0) << 2);
562
+ set_Item(0, get_Item(0) >> 2);
563
+ set_StrItem(0, get_StrItem(0) + "" World"");
564
+ }
565
+ }" ) ;
566
+ }
567
+
482
568
[ Fact ]
483
569
public async Task TestWriteOnlyPropertiesAsync ( )
484
570
{
0 commit comments