MCPcopy Create free account
hub / github.com/numpy/numpy / formatargspec

Function formatargspec

numpy/_utils/_inspect.py:140–166  ·  view source on GitHub ↗

Format an argument spec from the 4 values returned by getargspec. The first four arguments are (args, varargs, varkw, defaults). The other four arguments are the corresponding optional formatting functions that are called to turn names and values into strings. The ninth argument i

(args, varargs=None, varkw=None, defaults=None,
                  formatarg=str,
                  formatvarargs=lambda name: '*' + name,
                  formatvarkw=lambda name: '**' + name,
                  formatvalue=lambda value: '=' + repr(value),
                  join=joinseq)

Source from the content-addressed store, hash-verified

138 return convert(object)
139
140def formatargspec(args, varargs=None, varkw=None, defaults=None,
141 formatarg=str,
142 formatvarargs=lambda name: '*' + name,
143 formatvarkw=lambda name: '**' + name,
144 formatvalue=lambda value: '=' + repr(value),
145 join=joinseq):
146 """Format an argument spec from the 4 values returned by getargspec.
147
148 The first four arguments are (args, varargs, varkw, defaults). The
149 other four arguments are the corresponding optional formatting functions
150 that are called to turn names and values into strings. The ninth
151 argument is an optional function to format the sequence of arguments.
152
153 """
154 specs = []
155 if defaults:
156 firstdefault = len(args) - len(defaults)
157 for i in range(len(args)):
158 spec = strseq(args[i], formatarg, join)
159 if defaults and i >= firstdefault:
160 spec = spec + formatvalue(defaults[i - firstdefault])
161 specs.append(spec)
162 if varargs is not None:
163 specs.append(formatvarargs(varargs))
164 if varkw is not None:
165 specs.append(formatvarkw(varkw))
166 return '(' + ', '.join(specs) + ')'
167
168def formatargvalues(args, varargs, varkw, locals,
169 formatarg=str,

Callers 1

get_object_signatureFunction · 0.85

Calls 2

strseqFunction · 0.85
joinMethod · 0.45

Tested by

no test coverage detected