anchor.diff:      
     StringBuffer _buffer;
     
  -  _DualStringBuffer _classBuffer;
  -  String _className;
  +  _ClassStringBuffer _classBuffer;
     
     Map<dynamic, String> _types; 
     
  
positive.code:     final name = data["name"];
      final type = data["type"];
      
      _classBuffer.writeln("\t\tstatic $name: ${_handleType(type)};");
    }
    
    addClassMember(Map<String, dynamic> data) {
      final name = data["name"];
      final type = data["type"];
      
      _classBuffer.writeln("\t\t$name: ${_handleType(type)};");
    }
  }
negative.code:   "Function": "any"
  };
  
  class _ClassStringBuffer {
    final String name;
    
    StringBuffer prefix = new StringBuffer();
    
    StringBuffer variables = new StringBuffer();
    StringBuffer constructor = new StringBuffer();
    StringBuffer content = new StringBuffer();
    
    _ClassStringBuffer(this.name);
    
    writelnPrefix(String text) => prefix.writeln(text);
    
    writelnVariables(String text) => variables.writeln(text);
    writelnConstructor(String text) => constructor.writeln(text);
    writeln(String text) => content.writeln(text);
    
    String toString() {
      StringBuffer output = new StringBuffer();
      
      if (!prefix.isEmpty) {
        output.writeln(prefix);
      }
      
      output.write("\n\tclass $name {");
      
      if (!variables.isEmpty) {
        output.write("\n$variables");
      }
      
      if (!constructor.isEmpty) {
        output.write("\n$constructor");
      }
      
      if (!content.isEmpty) {
        output.write("\n$content");
      }
      
      output.write("\t}");
      return output.toString();
    }
  }
  
  