10000 Initial code commit · openpotato/opencodelist.delphi@61e405e · GitHub
[go: up one dir, main page]

Skip to content

Commit 61e405e

Browse files
committed
Initial code commit
1 parent 221be84 commit 61e405e

File tree

67 files changed

+11302
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+11302
-1
lines changed

.gitignore

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# Uncomment these types if you want even more clean repository. But be careful.
2+
# It can make harm to an existing project source. Read explanations below.
3+
#
4+
# Resource files are binaries containing manifest, project icon and version info.
5+
# They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files.
6+
#*.res
7+
#
8+
# Type library file (binary). In old Delphi versions it should be stored.
9+
# Since Delphi 2009 it is produced from .ridl file and can safely be ignored.
10+
#*.tlb
11+
#
12+
# Diagram Portfolio file. Used by the diagram editor up to Delphi 7.
13+
# Uncomment this if you are not using diagrams or use newer Delphi version.
14+
#*.ddp
15+
#
16+
# Visual LiveBindings file. Added in Delphi XE2.
17+
# Uncomment this if you are not using LiveBindings Designer.
18+
#*.vlb
19+
#
20+
# Deployment Manager configuration file for your project. Added in Delphi XE2.
21+
# Uncomment this if it is not mobile development and you do not use remote debug feature.
22+
#*.deployproj
23+
#
24+
# C++ object files produced when C/C++ Output file generation is configured.
25+
# Uncomment this if you are not using external objects (zlib library for example).
26+
#*.obj
27+
#
28+
29+
# Delphi compiler-generated binaries (safe to delete)
30+
*.exe
31+
*.dll
32+
*.bpl
33+
*.bpi
34+
*.dcp
35+
*.so
36+
*.apk
37+
*.drc
38+
*.map
39+
*.dres
40+
*.rsm
41+
*.tds
42+
*.dcu
43+
*.lib
44+
*.a
45+
*.o
46+
*.ocx
47+
48+
# Delphi autogenerated files (duplicated info)
49+
*.cfg
50+
*.hpp
51+
*Resource.rc
52+
53+
# Delphi local files (user-specific info)
54+
*.local
55+
*.identcache
56+
*.projdata
57+
*.tvsconfig
58+
*.dsk
59+
60+
# Delphi history and backups
61+
__history/
62+
__recovery/
63+
*.~*
64+
65+
# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
66+
*.stat
67+
68+
# Boss dependency manager vendor folder https://github.com/HashLoad/boss
69+
modules/
70+
71+
# DUnitX
72+
dunitx-results.xml
73+
74+
# DevExpress skinning
75+
*.skincfg
76+
77+
# Unit test folders
78+
test/dunitx/Win64/
79+
test/dunitx/Win32/

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (C) 2024 STÜBER SYSTEMS
3+
Copyright (C) 2025 STÜBER SYSTEMS
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

OpenCodeList.d22.groupproj

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2+
<PropertyGroup>
3+
<ProjectGuid>{C4C5503F-906E-4389-A294-FD2812688267}</ProjectGuid>
4+
</PropertyGroup>
5+
<ItemGroup>
6+
<Projects Include="packages\d22\OpenCodeList.dproj">
7+
<Dependencies/>
8+
</Projects>
9+
<Projects Include="test\dunitx\OpenCodeList.UnitTest.dproj">
10+
<Dependencies/>
11+
</Projects>
12+
</ItemGroup>
13+
<ProjectExtensions>
14+
<Borland.Personality>Default.Personality.12</Borland.Personality>
15+
<Borland.ProjectType/>
16+
<BorlandProject>
17+
<Default.Personality/>
18+
</BorlandProject>
19+
</ProjectExtensions>
20+
<Target Name="OpenCodeList">
21+
<MSBuild Projects="packages\d22\OpenCodeList.dproj"/>
22+
</Target>
23+
<Target Name="OpenCodeList:Clean">
24+
<MSBuild Projects="packages\d22\OpenCodeList.dproj" Targets="Clean"/>
25+
</Target>
26+
<Target Name="OpenCodeList:Make">
27+
<MSBuild Projects="packages\d22\OpenCodeList.dproj" Targets="Make"/>
28+
</Target>
29+
<Target Name="OpenCodeList_UnitTest">
30+
<MSBuild Projects="test\dunitx\OpenCodeList.UnitTest.dproj"/>
31+
</Target>
32+
<Target Name="OpenCodeList_UnitTest:Clean">
33+
<MSBuild Projects="test\dunitx\OpenCodeList.UnitTest.dproj" Targets="Clean"/>
34+
</Target>
35+
<Target Name="OpenCodeList_UnitTest:Make">
36+
<MSBuild Projects="test\dunitx\OpenCodeList.UnitTest.dproj" Targets="Make"/>
37+
</Target>
38+
<Target Name="Build">
39+
<CallTarget Targets="OpenCodeList;OpenCodeList_UnitTest"/>
40+
</Target>
41+
<Target Name="Clean">
42+
<CallTarget Targets="OpenCodeList:Clean;OpenCodeList_UnitTest:Clean"/>
43+
</Target>
44+
<Target Name="Make">
45+
<CallTarget Targets="OpenCodeList:Make;OpenCodeList_UnitTest:Make"/>
46+
</Target>
47+
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
48+
</Project>

OpenCodeList.d23.groupproj

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2+
<PropertyGroup>
3+
<ProjectGuid>{C4C5503F-906E-4389-A294-FD2812688267}</ProjectGuid>
4+
</PropertyGroup>
5+
<ItemGroup>
6+
<Projects Include="packages\d23\OpenCodeList.dproj">
7+
<Dependencies/>
8+
</Projects>
9+
<Projects Include="test\dunitx\OpenCodeList.UnitTest.dproj">
10+
<Dependencies/>
11+
</Projects>
12+
</ItemGroup>
13+
<ProjectExtensions>
14+
<Borland.Personality>Default.Personality.12</Borland.Personality>
15+
<Borland.ProjectType/>
16+
<BorlandProject>
17+
<Default.Personality/>
18+
</BorlandProject>
19+
</ProjectExtensions>
20+
<Target Name="OpenCodeList">
21+
<MSBuild Projects="packages\d23\OpenCodeList.dproj"/>
22+
</Target>
23+
<Target Name="OpenCodeList:Clean">
24+
<MSBuild Projects="packages\d23\OpenCodeList.dproj" Targets="Clean"/>
25+
</Target>
26+
<Target Name="OpenCodeList:Make">
27+
<MSBuild Projects="packages\d23\OpenCodeList.dproj" Targets="Make"/>
28+
</Target>
29+
<Target Name="OpenCodeList_UnitTest">
30+
<MSBuild Projects="test\dunitx\OpenCodeList.UnitTest.dproj"/>
31+
</Target>
32+
<Target Name="OpenCodeList_UnitTest:Clean">
33+
<MSBuild Projects="test\dunitx\OpenCodeList.UnitTest.dproj" Targets="Clean"/>
34+
</Target>
35+
<Target Name="OpenCodeList_UnitTest:Make">
36+
<MSBuild Projects="test\dunitx\OpenCodeList.UnitTest.dproj" Targets="Make"/>
37+
</Target>
38+
<Target Name="Build">
39+
<CallTarget Targets="OpenCodeList;OpenCodeList_UnitTest"/>
40+
</Target>
41+
<Target Name="Clean">
42+
<CallTarget Targets="OpenCodeList:Clean;OpenCodeList_UnitTest:Clean"/>
43+
</Target>
44+
<Target Name="Make">
45+
<CallTarget Targets="OpenCodeList:Make;OpenCodeList_UnitTest:Make"/>
46+
</Target>
47+
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
48+
</Project>

README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
![GitHub](https://img.shields.io/github/license/openpotato/opencodelist.delphi)
2+
3+
# OpenCodeList for Delphi
4+
5+
A [Delphi](https://www.embarcadero.com/products/delphi) library for parsing and building [OpenCodeList](https://openpotato.github.io/opencodelist/en/) documents.
6+
7+
+ Supports Delphi 12 Athens and Delphi 11 Alexandria
8+
+ Includes class for code list documents
9+
+ Includes class for code list set documents
10+
11+
## Installation
12+
13+
As Delphi does not have an established package manager, you have the following options:
14+
15+
+ Include this repository as [submodule](https://github.blog/open-source/git/working-with-submodules/) in the Git repository of your project.
16+
17+
+ Keep this repository separate and add the `src` folder as a search path to your project options.
18+
19+
+ Copy the source code from the `src` folder into the Git repository of your project and work with a copy of the code.
20+
21+
## Getting started
22+
23+
Documentation is available in the [GitHub wiki](https://github.com/openpotato/opencodelist.delphi/wiki).
24+
25+
## Can I help?
26+
27+
Yes, that would be much appreciated. The best way to help is to post a response via the Issue Tracker and/or submit a Pull Request.

packages/d22/OpenCodeList.dpk

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
package OpenCodeList;
2+
3+
{$R *.res}
4+
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
5+
{$ALIGN 8}
6+
{$ASSERTIONS ON}
7+
{$BOOLEVAL OFF}
8+
{$DEBUGINFO OFF}
9+
{$EXTENDEDSYNTAX ON}
10+
{$IMPORTEDDATA ON}
11+
{$IOCHECKS ON}
12+
{$LOCALSYMBOLS ON}
13+
{$LONGSTRINGS ON}
14+
{$OPENSTRINGS ON}
15+
{$OPTIMIZATION OFF}
16+
{$OVERFLOWCHECKS ON}
17+
{$RANGECHECKS ON}
18+
{$REFERENCEINFO ON}
19+
{$SAFEDIVIDE OFF}
20+
{$STACKFRAMES ON}
21+
{$TYPEDADDRESS OFF}
22+
{$VARSTRINGCHECKS ON}
23+
{$WRITEABLECONST OFF}
24+
{$MINENUMSIZE 1}
25+
{$IMAGEBASE $400000}
26+
{$DEFINE DEBUG}
27+
{$ENDIF IMPLICITBUILDING}
28+
{$DESCRIPTION 'A document parser and builder for the OpenCodeList project'}
29+
{$RUNONLY}
30+
{$IMPLICITBUILD ON}
31+
32+
requires
33+
rtl,
34+
RESTComponents;
35+
36+
contains
37+
OpenCodeList.PropertyNames in '..\..\src\Dictionaries\OpenCodeList.PropertyNames.pas',
38+
OpenCodeList.TypeConsts in '..\..\src\Dictionaries\OpenCodeList.TypeConsts.pas',
39+
OpenCodeList.IdentifierSource in '..\..\src\Models\OpenCodeList.IdentifierSource.pas',
40+
OpenCodeList.DateTimeUtils in '..\..\src\Utils\OpenCodeList.DateTimeUtils.pas',
41+
OpenCodeList.Identifier in '..\..\src\Models\OpenCodeList.Identifier.pas',
42+
OpenCodeList.JsonHelper in '..\..\src\ClassHelpers\OpenCodeList.JsonHelper.pas',
43+
OpenCodeList.Annotation in '..\..\src\Models\OpenCodeList.Annotation.pas',
44+
OpenCodeList.Description in '..\..\src\Models\OpenCodeList.Description.pas',
45+
OpenCodeList.Identification in '..\..\src\Models\OpenCodeList.Identification.pas',
46+
OpenCodeList.Publisher in '..\..\src\Models\OpenCodeList.Publisher.pas',
47+
OpenCodeList.LocalizedUri in '..\..\src\Models\OpenCodeList.LocalizedUri.pas',
48+
OpenCodeList.MimeTypedUri in '..\..\src\Models\OpenCodeList.MimeTypedUri.pas',
49+
OpenCodeList.BaseObjects in '..\..\src\Models\OpenCodeList.BaseObjects.pas',
50+
OpenCodeList.Column in '..\..\src\Models\OpenCodeList.Column.pas',
51+
OpenCodeList.BooleanColumn in '..\..\src\Models\OpenCodeList.BooleanColumn.pas',
52+
OpenCodeList.Nullable in '..\..\src\Utils\OpenCodeList.Nullable.pas',
53+
OpenCodeList.Document in '..\..\src\OpenCodeList.Document.pas',
54+
OpenCodeList.CodeListDocument in '..\..\src\OpenCodeList.CodeListDocument.pas',
55+
OpenCodeList.CodeListSetDocument in '..\..\src\OpenCodeList.CodeListSetDocument.pas',
56+
OpenCodeList.ForeignKey in '..\..\src\Models\OpenCodeList.ForeignKey.pas',
57+
OpenCodeList.Key in '..\..\src\Models\OpenCodeList.Key.pas',
58+
OpenCodeList.KeyRef in '..\..\src\Models\OpenCodeList.KeyRef.pas',
59+
OpenCodeList.StringColumn in '..\..\src\Models\OpenCodeList.StringColumn.pas',
60+
OpenCodeList.ObjectList in '..\..\src\Utils\OpenCodeList.ObjectList.pas',
61+
OpenCodeList.Row in '..\..\src\Models\OpenCodeList.Row.pas',
62+
OpenCodeList.Columns in '..\..\src\Models\OpenCodeList.Columns.pas',
63+
OpenCodeList.DocumentRef in '..\..\src\Models\OpenCodeList.DocumentRef.pas',
64+
OpenCodeList.CodeListDocumentRef in '..\..\src\Models\OpenCodeList.CodeListDocumentRef.pas',
65+
OpenCodeList.CodeListSetDocumentRef in '..\..\src\Models\OpenCodeList.CodeListSetDocumentRef.pas',
66+
OpenCodeList.ForeignKeys in '..\..\src\Models\OpenCodeList.ForeignKeys.pas',
67+
OpenCodeList.Keys in '..\..\src\Models\OpenCodeList.Keys.pas',
68+
OpenCodeList.Rows in '..\..\src\Models\OpenCodeList.Rows.pas',
69+
OpenCodeList.CodeListParserException in '..\..\src\OpenCodeList.CodeListParserException.pas',
70+
OpenCodeList.DocumentRefs in '..\..\src\Models\OpenCodeList.DocumentRefs.pas',
71+
OpenCodeList.DocumentLoader in '..\..\src\OpenCodeList.DocumentLoader.pas',
72+
OpenCodeList.DateOnlyColumn in '..\..\src\Models\OpenCodeList.DateOnlyColumn.pas',
73+
OpenCodeList.DateTimeColumn in '..\..\src\Models\OpenCodeList.DateTimeColumn.pas',
74+
OpenCodeList.EnumColumn in '..\..\src\Models\OpenCodeList.EnumColumn.pas',
75+
OpenCodeList.EnumMember in '..\..\src\Models\OpenCodeList.EnumMember.pas',
76+
OpenCodeList.EnumSetColumn in '..\..\src\Models\OpenCodeList.EnumSetColumn.pas',
77+
OpenCodeList.TimeOnlyColumn in '..\..\src\Models\OpenCodeList.TimeOnlyColumn.pas',
78+
OpenCodeList.IntegerColumn in '..\..\src\Models\OpenCodeList.IntegerColumn.pas',
79+
OpenCodeList.JsonColumn in '..\..\src\Models\OpenCodeList.JsonColumn.pas',
80+
OpenCodeList.NumberColumn in '..\..\src\Models\OpenCodeList.NumberColumn.pas',
81+
OpenCodeList.Values in '..\..\src\Models\OpenCodeList.Values.pas',
82+
OpenCodeList.SemanticVersion in '..\..\src\Utils\OpenCodeList.SemanticVersion.pas';
83+
84+
end.

0 commit comments

Comments
 (0)
0