From 0cd246808ebde98efd945e0cc37146d8a838f607 Mon Sep 17 00:00:00 2001 From: michael Date: Tue, 24 Jul 2007 20:11:24 +0000 Subject: [PATCH] * Added option to stop on parser errors git-svn-id: trunk@8163 - --- utils/fpdoc/fpdoc.pp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/utils/fpdoc/fpdoc.pp b/utils/fpdoc/fpdoc.pp index b4fb1f2dcb..1bc6a355da 100644 --- a/utils/fpdoc/fpdoc.pp +++ b/utils/fpdoc/fpdoc.pp @@ -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);