Given a javascript ast that represents a function call, clear and create our generic Call object. Some calls have no chance at resolution (e.g. array[2](param)) so we return nothing instead. :param func dict: :rtype: Call|None
(func)
| 75 | |
| 76 | |
| 77 | def get_call_from_func_element(func): |
| 78 | """ |
| 79 | Given a javascript ast that represents a function call, clear and create our |
| 80 | generic Call object. Some calls have no chance at resolution (e.g. array[2](param)) |
| 81 | so we return nothing instead. |
| 82 | |
| 83 | :param func dict: |
| 84 | :rtype: Call|None |
| 85 | """ |
| 86 | callee = func['callee'] |
| 87 | if callee['type'] == 'MemberExpression' and 'name' in callee['property']: |
| 88 | owner_token = resolve_owner(callee) |
| 89 | return Call(token=callee['property']['name'], |
| 90 | line_number=lineno(callee), |
| 91 | owner_token=owner_token) |
| 92 | if callee['type'] == 'Identifier': |
| 93 | return Call(token=callee['name'], line_number=lineno(callee)) |
| 94 | return None |
| 95 | |
| 96 | |
| 97 | def make_calls(body): |
no test coverage detected