From 1d928851c7cd94ddbfb049483bd8d15e4f1c4855 Mon Sep 17 00:00:00 2001
From: Kostas Vilkelis <kostasvilkelis@gmail.com>
Date: Mon, 13 May 2024 01:41:23 +0200
Subject: [PATCH] use argspec instead to obtain args

---
 meanfi/kwant_helper/utils.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meanfi/kwant_helper/utils.py b/meanfi/kwant_helper/utils.py
index baf61a5..7983e4a 100644
--- a/meanfi/kwant_helper/utils.py
+++ b/meanfi/kwant_helper/utils.py
@@ -1,5 +1,6 @@
 from itertools import product
 from typing import Callable
+import inspect
 
 import numpy as np
 from scipy.sparse import coo_array
@@ -8,6 +9,7 @@ from kwant.builder import Site
 import kwant.lattice
 import kwant.builder
 
+
 from meanfi.tb.tb import _tb_type
 
 
@@ -49,7 +51,7 @@ def builder_to_tb(
         row, col = np.array([*product(tb_idx, tb_idx)]).T
 
         if callable(val):
-            param_keys = val.__code__.co_varnames[1:]
+            param_keys = inspect.getfullargspec(val).args[1:]
             try:
                 val = val(site, *[params[key] for key in param_keys])
             except KeyError as key:
@@ -74,7 +76,7 @@ def builder_to_tb(
         row, col = np.array([*product(tb_idx1, tb_idx2)]).T
 
         if callable(val):
-            param_keys = val.__code__.co_varnames[2:]
+            param_keys = inspect.getfullargspec(val).args[2:]
             try:
                 val = val(site1, site2, *[params[key] for key in param_keys])
             except KeyError as key:
-- 
GitLab