Skip to content

Conversation

@highan911
Copy link

Added Tests/OptionalIfcLogicalTest.cs and Tests/TestFiles/IfcMaterialLayerTestFile.ifc for issue #502.

Thank you very much!

andyward and others added 18 commits February 1, 2025 16:10
Centralised Duration [de]serilisation logic across IFC4 & 4x3
… (locale based) currency lookup.

Refactored to monetary handling to centralise code across schemas
For future maintenance, rather than hardwire the UNDEFINED literal this uses a helper to return USERDEFINED to the 'common' schema when using enums new in 4x3
Implemented 4x3 Partials for IFC4 interop as per xBimTeam#600
… assembly.

This may be a design decision but can also occur when for instance ILMerge-ing xbim assemblies.
)

* Updated Step21 Parser (Scanner/Lexer) to more gracefully handle invalid string literal inputs as per xBimTeam#605  xBimTeam#586 etc

Refactored the lex code to make more maintainable.
Refactored the scanner code gen approach to enable us to retain local fixes to the Scanner
Added gplex materials for reference. Documented gplex usage

Improved support for multi-line string literals with invalid escaping

i.e. IFCLABEL('Text
over multiple line without slash X encoding')

These may be technically valid but handling them as an edge case creates parsing issues for other more typical classes of errors and edge cases
(e.g. unescaped quotes, unescaped backslashes, incorrect \X \S and \P char encoding etc) -
because the parser can fail to backtrack until hitting EOF as it attempts to find a valid multi-line terminated string. Essentially one valid unterminated string renders the whole file a failure.
By eliminating unencoded CRLF in string literals we fail early affecting only the single entity.


* Re-added support for parsing multi-line literal strings
Added warning for invalid escaping in strings

* Added test to ensure string encoding is correct on output

* Added tests for invalid FILE_NAME escaping in header
…set in Store

Added spot fix for special characters in IfcXmlWriter3
Fixed up test issues after late change to how StepHeader FileName is set in Store
… models across sessions to avoid duplicating. xBimTeam#608

Minor refactoring to use EntityCreator for cross schema consistency
Attempt to follow OwnerHistory intent more closely (Owner vs Modification).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants