anchor.diff:    }
   
     visitInstanceCreation(InstanceCreation node) {
  -    write('${node.classNode}');
  +    writeClassReferenceFromReference(node.classReference);
       if (node.typeArguments.isNotEmpty) {
         writeSymbol('<');
         writeList(node.typeArguments, writeType);
         writeSymbol('>');
       }
  -    write(' {');
  +    writeSymbol('{');
       bool first = true;
       node.fieldValues.forEach((Reference fieldRef, Expression value) {
         if (!first) {
           writeComma();
         }
  -      write('${fieldRef.asField.name}: ');
  +      writeWord('${fieldRef.asField.name.name}');
  +      writeSymbol(':');
         writeExpression(value);
         first = false;
       });
  
positive.code:       writeExpression(unusedArgument);
        first = false;
      }
  
      write('}');
    }
  
    visitIsExpression(IsExpression node) {
  
negative.code:     }
    }
  
    void writeConstantReference(Constant node) {
      writeWord(syntheticNames.nameConstant(node));
    }
  
    visitConstantExpression(ConstantExpression node) {
      writeConstantReference(node.constant);
    }
  
    defaultConstant(Constant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      endLine('$node');
    }
  
    visitListConstant(ListConstant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      writeWord('ListConstant');
      writeSymbol('<');
      writeType(node.typeArgument);
      writeSymbol('>(');
      writeList(node.entries, writeConstantReference);
      endLine(')');
    }
  
    visitSetConstant(SetConstant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      write('SetConstant<');
      writeSymbol('<');
      writeType(node.typeArgument);
      writeSymbol('>(');
      writeList(node.entries, writeConstantReference);
      endLine(')');
    }
  
    visitMapConstant(MapConstant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      write('MapConstant<');
      writeList([node.keyType, node.valueType], writeType);
      writeSymbol('>(');
      writeList(node.entries, (entry) {
        writeConstantReference(entry.key);
        writeSymbol(':');
        writeConstantReference(entry.value);
      });
      endLine(')');
    }
  
    visitInstanceConstant(InstanceConstant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      writeClassReferenceFromReference(node.classReference);
      if (!node.classNode.typeParameters.isEmpty) {
        writeSymbol('<');
        writeList(node.typeArguments, writeType);
        writeSymbol('>');
      }
      writeSymbol(' {');
      writeList(node.fieldValues.entries, (entry) {
        writeWord('${entry.key.asField.name.name}');
        writeSymbol(':');
        writeConstantReference(entry.value);
      });
      endLine('}');
    }
  
    visitStringConstant(StringConstant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      endLine('"${escapeString(node.value)}"');
    }
  
    visitUnevaluatedConstant(UnevaluatedConstant node) {
      writeIndentation();
      writeConstantReference(node);
      writeSpaced('=');
      writeSymbol('(');
      writeExpression(node.expression);
      endLine(')');
    }
  