mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-29 12:44:11 +02:00
![]() Based on command line option (CLO) `-e/--declare-enums-as` that selects the way how to define C enums and bit fields. Added support for 5th options in addition 4 already implemented. 1. `IntConst`: No type, just use integer non typed constants. This was already implemented, but not easily selected at CLI. 2. `TypedIntConst`: Use non strict type aliases and typed constants. This was already implemented, selected by default in the code. 3. `IntAliasConst`: Use strict type aliases and non typed constants. This was newly added. 4. `Enum`: Use Pascal enumeration type for both C enums and bit fields. This was newly added. 5. `Set`: Use Pascal enumeration type for both C enums and Pascal sets for bit fields. This is now implemented. |
||
---|---|---|
.. | ||
.gitignore | ||
commandlineoptions.pas | ||
gir2pascal.ico | ||
gir2pascal.lpi | ||
gir2pascal.lpr | ||
gir2pascal.res | ||
girctypesmapping.pas | ||
girerrors.pas | ||
girfiles.pas | ||
girnamespaces.pas | ||
girobjects.pas | ||
girparser.pas | ||
girpascalclasswriter.pas | ||
girpascalwriter.pas | ||
girpascalwritertypes.pas | ||
girtokens.pas | ||
LICENSE.md | ||
Makefile | ||
README.md |
gir2pas
The [gir2pas][] utility is a program to convert the GIR metadata format (= XML files) used by GObject introspection into usable Pascal source code, suitable for generating corresponding language bindings.
It was originaly named gir2pascal maintained as part of the Lazarus Code and Component Repository (lazarus-ccr,
wiki article), see applications/gobject-introspection/
. Later it has
received some maintenance by n1tehawk and finally was imported from his
repository into Lazarus source tree.
License
This project builds upon the original Lazarus CCR version and is thus intended
to follow the same licensing principles. For the gobject-introspection
folder
this seems to be GPL v2, as referenced in a number of file headers.