fcl-md: many funcs may need 'const' for str params
I want to use the package (copying the folder to my project) and I need the max speed. I tried to find all non-CONST string params. I've found about 40 items. some of them maybe need to stay as-is, but many can be improved by adding 'const'.
+Search "[;\(]\s*\b\w+\s*:\s*\w*string\b". Report with [styles].
<src\markdown.elements.pas>: #8
< 83>: procedure AddText(s : AnsiString); overload;
< 98>: function AddText(aPos: TPosition; aContent: AnsiString): TMarkDownTextNode;
< 99>: function AddTextNode(aPos: TPosition; aKind: TTextNodeKind; cnt: AnsiString; aDoClose: Boolean=True): TMarkDownTextNode; // always make a new node, and make it inactive
<246>: constructor Create(aParent : TMarkDownBlock; aLine : integer; aText : AnsiString); reintroduce;
<256>: procedure TMarkDownTextNode.addText(s: AnsiString);
<379>: function TMarkDownTextNodeList.addText(aPos : TPosition; aContent: AnsiString): TMarkDownTextNode;
<396>: function TMarkDownTextNodeList.addTextNode(aPos : TPosition; aKind : TTextNodeKind; cnt: AnsiString; aDoClose : Boolean = True): TMarkDownTextNode;
<610>: constructor TMarkDownTextBlock.Create(aParent: TMarkDownBlock; aLine: integer; aText: AnsiString);
<src\markdown.fpdocrender.pas>: #4
<101>: procedure DoKey(aItem: AnsiString; const aKey: AnsiString; var aContinue: Boolean);
<229>: function Append(aAnsiString : Ansistring) : TAnsiStringBuilder;
<233>: function TStringBuilderHelper.Append(aAnsiString: Ansistring): TAnsiStringBuilder;
<524>: procedure TFPDocMarkDownTextRenderer.DoKey(aItem: AnsiString; const aKey: Ansistring; var aContinue: Boolean);
<src\markdown.htmlrender.pas>: #4
< 88>: procedure DoKey(aItem: AnsiString; const aKey: AnsiString; var aContinue: Boolean);
<214>: function Append(aAnsiString : Ansistring) : TAnsiStringBuilder;
<218>: function TStringBuilderHelper.Append(aAnsiString: Ansistring): TAnsiStringBuilder;
<430>: procedure THTMLMarkDownTextRenderer.DoKey(aItem: AnsiString; const aKey: Ansistring; var aContinue: Boolean);
<src\markdown.latexrender.pas>: #4
< 58>: Procedure RenderToFile(aDocument : TMarkDownDocument; aFileName : string);
<214>: function Append(aAnsiString : Ansistring) : TAnsiStringBuilder;
<218>: function TStringBuilderHelper.Append(aAnsiString: Ansistring): TAnsiStringBuilder;
<323>: procedure TMarkDownLaTeXRenderer.RenderToFile(aDocument: TMarkDownDocument; aFileName: string);
<src\markdown.line.pas>: #2
< 34>: constructor create(aLine : AnsiString; aLineNo : integer);
< 69>: constructor TMarkDownLine.create(aLine: AnsiString; aLineNo: integer);
<src\markdown.parser.pas>: #2
< 59>: function InList(aBlock : TMarkDownBlock; ordered : boolean; marker : String; indent : integer; grace : integer; out list : TMarkDownListBlock) : boolean;
<271>: function TMarkDownBlockProcessor.InList(aBlock: TMarkDownBlock; ordered: boolean; marker: String; indent: integer; grace: integer;
<src\markdown.scanner.pas>: #4
< 51>: constructor Create(aText : String; aLineNo : integer);
< 76>: function Has(S : string) : boolean;
<103>: constructor TMarkDownTextScanner.Create(aText: String; aLineNo : integer);
<299>: function TMarkDownTextScanner.Has(S: string): boolean;
<src\markdown.utils.pas>: #2
< 93>: function StartsWithWhitespace(const S : String; aMatch : String; out aLength : integer; aWSLen : integer = 3) : boolean; overload;
<323>: function StartsWithWhitespace(const S: String; aMatch: String; out aLength: integer; aWSLen: integer): boolean;