40 columns                              |
>>>
obj..method();
<<<
obj.method();
>>>
obj..getter;
<<<
obj.getter;
>>>
obj..setter = 3;
<<<
obj.setter = 3;
>>>
obj..[subscript] = 3;
<<<
obj[subscript] = 3;
>>> targets that don't need parentheses
{
  null..method();
  123..method();
  true..method();
  "str"..method();
  "str$interp"..method();
  [1]..method();
  () {}..method();

  this..method();
  new C()..method();
  const C()..method();
  foo()..method();
  foo.bar()..method();
  foo?.bar()..method();
  super.foo()..method();
}
<<<
{
  null.method();
  123.method();
  true.method();
  "str".method();
  "str$interp".method();
  [1].method();
  () {}.method();

  this.method();
  new C().method();
  const C().method();
  foo().method();
  foo.bar().method();
  foo?.bar().method();
  super.foo().method();
}
>>> targets that do need parentheses
{
  a as C..method();
  a is C..method();
  c ? a : b..method();
  a ?? b..method();
  a && b..method();
  a || b..method();
  a == b..method();
  a != b..method();
  a < b..method();
  a > b..method();
  a <= b..method();
  a >= b..method();
  a ^ b..method();
  a | b..method();
  a << b..method();
  a >> b..method();
  a + b..method();
  a - b..method();
  a * b..method();
  a / b..method();
  a ~/ b..method();
  -a..method();
  !a..method();
  ~a..method();
  a++..method();
  a--..method();

  foo() async {
    await a..method();
  }
}
<<<
{
  (a as C).method();
  (a is C).method();
  (c ? a : b).method();
  (a ?? b).method();
  (a && b).method();
  (a || b).method();
  (a == b).method();
  (a != b).method();
  (a < b).method();
  (a > b).method();
  (a <= b).method();
  (a >= b).method();
  (a ^ b).method();
  (a | b).method();
  (a << b).method();
  (a >> b).method();
  (a + b).method();
  (a - b).method();
  (a * b).method();
  (a / b).method();
  (a ~/ b).method();
  (-a).method();
  (!a).method();
  (~a).method();
  (a++).method();
  (a--).method();

  foo() async {
    (await a).method();
  }
}
>>> unaffected expressions
{
  foo..bar()..method();
  a = b..method();
  a += b..method();
  () => a..method();
  throw a..method();
}
<<<
{
  foo
    ..bar()
    ..method();
  a = b..method();
  a += b..method();
  () => a..method();
  throw a..method();
}