doxygen icon indicating copy to clipboard operation
doxygen copied to clipboard

adding pre-stuff for parsing Pascal files

Open paule32 opened this issue 11 months ago • 4 comments

I have add pre-stuff for parsing Pascal files, later. This branch stuff is only for testing, and for learning how doxygen works.

I have implement the missing Translator functions for geman users (translator_de.h)

stay tuned next coming soon...

paule32 avatar Feb 19 '25 19:02 paule32

As the PR is work in progress I set it to work in progress / draft.

To have a look why the GitHub Actions failed I restarted 1 run and saw the new warnings:

/home/runner/work/doxygen/doxygen/src/docsets.cpp: In member function ‘virtual void DocSets::addIndexItem(const Definition*, const MemberDef*, const QCString&, const QCString&)’:
/home/runner/work/doxygen/doxygen/src/docsets.cpp:304:10: warning: enumeration value ‘Pascal’ not handled in switch [-Wswitch]
  304 |   switch (langExt)
      |          ^
/home/runner/work/doxygen/doxygen/src/docsets.cpp:304:10: warning: enumeration value ‘dBase’ not handled in switch [-Wswitch]

these should be handled. The other warnings (as far as I can see are known and expected and "OK").

The problem regarding the documentation generation is persistent and probably caused by the incorrect usage of TranslatorAdapter as already noted in the review.

albert-github avatar Feb 20 '25 13:02 albert-github

Looks like again some changes got in undoing recent fixes in the doxygen master version (e.g. deps/libmscgen/mscgen_config.h) To update to master you should use the merge functionality of git.

albert-github avatar Feb 21 '25 08:02 albert-github

with upload the new file(s) docsets.cpp and passcanner.l, I fixed the issue in docsets.cpp. I use a exit(1); C-function, to stop doxygen with processing in file passcanner.l So, you can parse Pascal files (mapper file extensions: *.pas and *.pp).

In real, this is beta ware. Because only the recognition the extensions to set the config on. works. And a second reason for this is, that I don't parse Pascal files in detail, yet.

But you can parse (* *) comments, whitespaces and a line like this: **unit test ; **. In the other files, I have update the dates to 1997-2025.

More will come soon...

paule32 avatar Feb 21 '25 15:02 paule32

In my previous comments I mentioned some things about how to proceed (a.o.) and it is better to address these issues first

  • concentrate on one parser e.g. pascalscanner and pascalcode or sbasescanner / dbasecode and get this properly up and running
  • don't mix different functionality (trandlator_de) should be in its own proposed pull request.
  • changes to yml should not be necessary, the add new yml files look like functionality for one user and are probably of no interest to the CI system and when of interest they should be in a separate proposed pull request
  • a proper merge with the master branch should be mad so no reverts of code necessary in master will be present (like now for the files from doc_internal).

albert-github avatar Feb 23 '25 11:02 albert-github