* Added option to stop on parser errors

git-svn-id: trunk@8163 -
This commit is contained in:
michael 2007-07-24 20:11:24 +00:00
parent eede14ca9e
commit 0cd246808e

View File

@ -40,6 +40,7 @@ var
InputFiles, DescrFiles: TStringList;
PackageName, DocLang, ContentFile : String;
Engine: TFPDocEngine;
StopOnParserError : Boolean;
Procedure Usage(AnExitCode : Byte);
@ -108,6 +109,7 @@ begin
DescrFiles := TStringList.Create;
BackendOptions := TStringList.Create;
Engine := TFPDocEngine.Create;
StopOnParserError:=False;
end;
procedure FreeOptions;
@ -161,6 +163,8 @@ begin
Engine.WarnNoNode := True
else if s = '--show-private' then
Engine.HidePrivate := False
else if s = '--stop-on-parser-error' then
StopOnParserError := True
else
begin
i := Pos('=', s);
@ -243,8 +247,11 @@ begin
ParseSource(Engine, InputFiles[i], OSTarget, CPUTarget);
except
on e: EParserError do
WriteLn(StdErr, Format('%s(%d,%d): %s',
[e.Filename, e.Row, e.Column, e.Message]));
If StopOnParserError then
Raise
else
WriteLn(StdErr, Format('%s(%d,%d): %s',
[e.Filename, e.Row, e.Column, e.Message]));
end;
WriterClass:=GetWriterClass(Backend);
Writer:=WriterClass.Create(Engine.Package,Engine);