2015-04-16 23:09:17 +02:00
|
|
|
def Fun():
|
|
|
|
pass
|
|
|
|
|
|
|
|
class A:
|
|
|
|
def __init__(self):
|
|
|
|
pass
|
|
|
|
def Fun(self):
|
|
|
|
pass
|
|
|
|
|
|
|
|
try:
|
|
|
|
print(Fun.__name__)
|
|
|
|
print(A.__init__.__name__)
|
|
|
|
print(A.Fun.__name__)
|
|
|
|
print(A().Fun.__name__)
|
|
|
|
except AttributeError:
|
|
|
|
print('SKIP')
|
2017-12-12 00:20:11 +01:00
|
|
|
raise SystemExit
|
2018-12-06 08:02:41 +01:00
|
|
|
|
|
|
|
# __name__ of a bound native method is not implemented in uPy
|
|
|
|
# the test here is to make sure it doesn't crash
|
|
|
|
try:
|
|
|
|
str((1).to_bytes.__name__)
|
|
|
|
except AttributeError:
|
|
|
|
pass
|
2019-09-26 03:48:39 +02:00
|
|
|
|
|
|
|
# name of a function that has closed over variables
|
2022-06-24 15:34:15 +02:00
|
|
|
# and also the name of the inner closure
|
2019-09-26 03:48:39 +02:00
|
|
|
def outer():
|
|
|
|
x = 1
|
|
|
|
def inner():
|
|
|
|
return x
|
|
|
|
return inner
|
|
|
|
print(outer.__name__)
|
2022-06-24 15:34:15 +02:00
|
|
|
print(outer().__name__)
|