From e8a0da5c136235ebacc0a39e12529d73a60e0d3e Mon Sep 17 00:00:00 2001 From: Jukka Aho Date: Sat, 9 May 2026 18:35:33 +0300 Subject: [PATCH] feat(legacy/io): add Abaqus keyword registration globals Restore mutable keyword registry used by the `.inp` parser inside Legacy. - Implement `register_abaqus_keyword` / `is_abaqus_keyword_registered`. --- src/legacy/io/keyword_register.jl | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/legacy/io/keyword_register.jl diff --git a/src/legacy/io/keyword_register.jl b/src/legacy/io/keyword_register.jl new file mode 100644 index 0000000..62b3755 --- /dev/null +++ b/src/legacy/io/keyword_register.jl @@ -0,0 +1,24 @@ +# This file is a part of JuliaFEM. +# License is MIT: see https://github.com/JuliaFEM/AbaqusReader.jl/blob/master/LICENSE + +global __register__ = Set{String}() + +""" + register_abaqus_keyword(keyword::String) + +Add ABAQUS keyword `s` to register. That is, after registration every time +keyword show up in `.inp` file a new section is started +""" +function register_abaqus_keyword(keyword::String) + push!(__register__, keyword) + return Type{Val{Symbol(keyword)}} +end + +""" + is_abaqus_keyword_registered(keyword::String) + +Return true/false is ABAQUS keyword registered. +""" +function is_abaqus_keyword_registered(keyword::String) + return keyword in __register__ +end