anchor.diff:  begin
     inherited;
     nestedCommentsCount := 0;
  +  namedRegionCount := 0;
     tokenStringBracketsCount := 0;
     rangeKinds := [];
     rString := false;
  
positive.code:     exit;
    end;
  
    // line comment
    if (fCurrRange.rangeKinds = []) or (fCurrRange.rangeKinds = [rkAsm]) then if readDelim(reader, fTokStop, '//') then
    begin
      fTokKind := tkCommt;
      if readDelim(reader, fTokStop, '/') then
        fTokKind := tkDDocs;
      readLine(reader, fTokStop);
      //if fTokStop - fTokStart > 4 then
      //begin
      //  Dec(reader,4);
      //  Dec(fTokStop,4);
      //  if reader = '---+'#10 then
      //    StartCodeFoldBlock(nil)
      //  else if reader = '----'#10 then
      //    EndCodeFoldBlock();
      //  readLine(reader, fTokStop);
      //end;
      exit;
    end else readerReset;
  
  
negative.code:   TRangeKinds = set of TRangeKind;
  
    // defines the ranges which can be folded
    TFoldKinds = set of (fkBrackets, fkComments1, fkComments2, fkStrings, fkRegion);
  
    // internal class used to keep trace of the useful informations of the previous line
    TSynD2SynRange = class(TSynCustomHighlighterRange)
    private
      namedRegionCount: Integer;
      nestedCommentsCount: Integer;
      tokenStringBracketsCount: Integer;
      rangeKinds: TRangeKinds;
  