Thomas Krijnen
603cedc487
Try some things: (a) fewer allocations - parse context pool; lexer string pool (b) SWAR process multiple chars at once in keywords/enums/strs/stc.
2026-03-27 20:45:13 +01:00
Thomas Krijnen
8e42f35db3
Rework variable length token storage to use string pool; eliminate need for rereads
2026-03-26 15:49:28 +01:00
Thomas Krijnen
9d69a712ac
Does SWIG prefer std::conditional_t over auto return type?
2026-03-26 11:33:00 +01:00
Thomas Krijnen
dc127471c5
Rerun codegen
2026-03-26 10:52:12 +01:00
Thomas Krijnen
95a094d596
Fix some schema generation issues
2026-03-26 10:39:29 +01:00
ssg3d
7b4889d2ec
Update IfcParse.cpp
...
IfcOpenshell read file, and write file without changes. This round trip introduces truncation noise. It should not hurt to increase the precision to keep this clean.
2026-02-13 10:03:05 +01:00
Thomas Krijnen
4ec643d4e1
schema entity initialize() method, optional argument forwarding in file::create, populate_derived in InstanceData
2026-01-15 19:24:55 +01:00
Thomas Krijnen
d82e1da907
Don't leak parent id into type decl instances
2026-01-15 15:38:49 +01:00
Thomas Krijnen
574827016a
Initialization of header and file
2026-01-14 14:03:28 +01:00
Thomas Krijnen
1a4d750ecd
Consistency of get_inverse calls
2026-01-14 14:00:50 +01:00
Thomas Krijnen
0a5dd78774
Fix add entity with id
2026-01-14 14:00:00 +01:00
Thomas Krijnen
e4e4f31d20
Defer deletion so that traversal still works
2026-01-13 08:45:04 +01:00
Thomas Krijnen
2dd002bcd8
Properly constuct type decl instances
2026-01-13 08:44:44 +01:00
Thomas Krijnen
69a4ad35a1
Remaining cpp changes
2026-01-10 10:20:34 +01:00
Thomas Krijnen
ae79996eb6
Fix running of test/tests.py
2026-01-08 11:49:29 +01:00
Thomas Krijnen
f5b2358c2e
Make Base::data() private, file::add(..., id)
2026-01-08 10:35:46 +01:00
Thomas Krijnen
c57209fbce
Fixes
2026-01-07 20:37:10 +01:00
Thomas Krijnen
088a6b7204
Reinstate IfcAlignment example
2026-01-07 18:15:23 +01:00
Thomas Krijnen
f2f4d626a5
Fix examples mostly
2026-01-07 13:51:48 +01:00
Thomas Krijnen
572a5655cf
Fixes for gcc
2026-01-06 13:23:48 +01:00
Thomas Krijnen
ccd91c0ff0
No more messing around with specific sfinae as<>() in Select implementations
2026-01-06 11:27:29 +01:00
Thomas Krijnen
a1d2c902f3
Add enum to forward declarations for Ifc2x3::IfcNullStyle
2026-01-06 09:56:36 +01:00
Thomas Krijnen
3ae361bb3b
Rerun codegen
2026-01-06 09:49:28 +01:00
Thomas Krijnen
2d7521ed88
Move template down to .cpp to prevent use of incomplete type
2026-01-06 09:41:20 +01:00
Thomas Krijnen
7098beb819
Work towards v1.0 data model with encapsulated weak_ptr as basis for instances
2026-01-05 21:42:01 +01:00
Andrej730
d41985f23a
format cmake files
2025-12-22 18:44:42 +05:00
Andrej730
deb6243ce5
cmake - use INCLUDES DESTINATION for includes paths export
...
As it's more idiomatic.
2025-12-15 19:02:06 +05:00
Andrej730
d5210e0d75
cmake export - propagate HAS_SCHEMA definitions to exported IfcParse target
2025-12-12 20:16:14 +05:00
Andrej730
d303acd660
cmake export - propagate IFOPSH_WITH_ROCKSDB to cmake config
...
Apparently, cmake isn't exporting definitions defined globally `add_definitions`, so creating interface target to combine rocksdb and our definitions.
2025-12-12 20:16:13 +05:00
Andrej730
01f97a5860
IfcParse - export include path
2025-12-12 19:30:23 +05:00
Andrej730
5a0f8d30cf
cmake - install headers using PUBLIC_HEADER, deprecate INCLUDEDIR
2025-12-12 19:30:21 +05:00
Andrej730
92964fb5ef
cmake - option to build only common schemas
2025-12-12 19:30:21 +05:00
Andrej730
2627052b55
cmake - export IfcOpenShellConfig.cmake
2025-12-11 19:55:41 +05:00
Andrej730
6a0caa7989
cmake - fix missing xml.lib in debug builds #7413
...
After 5d56025 we were using `LibXml2::LibXml2` instead of `LIBXML2_LIBRARIES` for linking, but this target was missing debug variants leading to issues during linking.
2025-12-04 17:44:13 +05:00
Andrej730
1468bf3c97
parse_ifcxml - remove redundant ifdef WITH_IFCXML
...
The entire file is already wrapped in `WITH_IFCXML`, so no need to do it again for some block.
2025-12-02 19:55:56 +05:00
Andrej730
a5d0187343
ifcparse cmake - fix missing ifcxml symbols in python wrapper #7406
2025-12-02 19:55:56 +05:00
Andrej730
67421c533c
ifcparse cmake - make compile definition more explicit #7406
2025-12-02 19:55:56 +05:00
Esteban DUGUEPEROUX
083fab5255
cmake: Use standard install way
...
For specific install customization, use CMAKE_INSTALL_BINDIR, CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR variables.
See-Also: https://cmake.org/cmake/help/latest/guide/tutorial/Installation%20Commands%20and%20Concepts.html
2025-11-30 11:11:51 +01:00
Esteban DUGUEPEROUX
81bf187ee6
cmake: put IFCXML_SUPPORT related config in IfcParse cmake config file
2025-11-30 11:05:46 +01:00
Thomas Krijnen
9d437b5bc3
Mark simple type instance file ownership #7226
2025-11-25 09:19:28 +01:00
Thomas Krijnen
461404cd45
Don't terminate parsing on invalid entity names
2025-11-23 11:16:47 +01:00
Esteban DUGUEPEROUX
5d56025014
cmake: Separate ifcparse build in its own CMakeLists.txt file
2025-11-10 09:42:51 +01:00
Thomas Krijnen
7cb1f07a0b
hacky way to retain attribute too many messages on header entities in validate.py
2025-10-25 21:12:12 +02:00
Thomas Krijnen
bdb52dcffd
Pass header entity types during pass to resolve empty list type
2025-10-25 20:29:41 +02:00
Thomas Krijnen
1594b9505c
Don't emit Parsing terminated on benign files by not reading past stream in skipComment()
2025-10-25 20:14:02 +02:00
Thomas Krijnen
fa46fe0cf0
Typos
2025-10-25 15:30:36 +02:00
Thomas Krijnen
e82ca0e932
Less back and forths by returning semi count in page
2025-10-25 15:08:21 +02:00
Thomas Krijnen
2e951eb952
Whitespace handling now that token strings are built on the fly
2025-10-25 13:55:15 +02:00
Thomas Krijnen
bcb5fd7810
Missing return type
2025-10-24 13:32:18 +02:00
Thomas Krijnen
40c5145a13
Address some omissions in the FileReader rewrite regarding unicode paths on windows
2025-10-24 13:26:27 +02:00