From 4cc2fd75ccb367b76aa3abf27cd805c30624eb0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20Torgrim=20Thorbj=C3=B8rnsen?= Date: Tue, 17 Mar 2026 13:27:07 +0100 Subject: [PATCH] changed eval to ref to make it work for julia 1.12 --- src/local_db.jl | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/local_db.jl b/src/local_db.jl index 9472470..0cb4d7f 100644 --- a/src/local_db.jl +++ b/src/local_db.jl @@ -170,24 +170,23 @@ get_phaseinoffset(db::LocalDB) = get_phaseinoffset(get_input(db)) get_phaseindelta(db::LocalDB) = get_phaseindelta(get_input(db)) get_phaseinsteps(db::LocalDB) = get_phaseinsteps(get_input(db)) -const _LOCAL_DB_NAME = :_local_db +const _LOCAL_DB_NAME = Ref{Union{LocalDB, Nothing}}(nothing) function create_local_db() - if (_LOCAL_DB_NAME in names(Main)) - db = getfield(Main, _LOCAL_DB_NAME) - isnothing(db) || error("$_LOCAL_DB_NAME already exists") + if _LOCAL_DB_NAME[] === nothing + _LOCAL_DB_NAME[] = LocalDB() + else + error("$_LOCAL_DB_NAME already exists") end - Core.eval(Main, Expr(:(=), _LOCAL_DB_NAME, LocalDB())) return end function get_local_db() - (_LOCAL_DB_NAME in names(Main)) || error("$_LOCAL_DB_NAME has not been created") - db = getfield(Main, _LOCAL_DB_NAME) + db = _LOCAL_DB_NAME[] isnothing(db) && error("$_LOCAL_DB_NAME has been freed") return db::LocalDB end function free_local_db() - Core.eval(Main, Expr(:(=), _LOCAL_DB_NAME, nothing)) + _LOCAL_DB_NAME[] = nothing return end \ No newline at end of file