Skip to content

Commit a2467e3

Browse files
raise ValueError on unknown function
1 parent 5053bcf commit a2467e3

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

brownie/project/sources.py

+9-6
Original file line numberDiff line numberDiff line change
@@ -121,12 +121,15 @@ def get_fn(self, name, start, stop):
121121
return False if stop > offset[2] else offset[0]
122122

123123
def get_fn_offset(self, name, fn_name):
124-
if name not in self._data:
125-
name = next(
126-
k for k, v in self._data.items() if v['sourcePath'] == str(name) and
127-
fn_name in [i[0] for i in v['fn_offsets']]
128-
)
129-
return next(i for i in self._data[name]['fn_offsets'] if i[0] == fn_name)[1:3]
124+
try:
125+
if name not in self._data:
126+
name = next(
127+
k for k, v in self._data.items() if v['sourcePath'] == str(name) and
128+
fn_name in [i[0] for i in v['fn_offsets']]
129+
)
130+
return next(i for i in self._data[name]['fn_offsets'] if i[0] == fn_name)[1:3]
131+
except StopIteration:
132+
raise ValueError("Unknown function '{}' in contract {}".format(fn_name, name))
130133

131134
def inheritance_map(self):
132135
return dict((k, v['inherited'].copy()) for k, v in self._data.items())

0 commit comments

Comments
 (0)