Browse Source
Adds new tests/documentation for missing name mangling for private class members. Signed-off-by: Trent Warlaven <trwbox@gmail.com>pull/12177/head
Trent Warlaven
1 year ago
committed by
Damien George
1 changed files with 26 additions and 0 deletions
@ -0,0 +1,26 @@ |
|||
""" |
|||
categories: Core,Classes |
|||
description: Private Class Members name mangling is not implemented |
|||
cause: The MicroPython compiler does not implement name mangling for private class members. |
|||
workaround: Avoid using or having a collision with global names, by adding a unique prefix to the private class member name manually. |
|||
""" |
|||
|
|||
|
|||
def __print_string(string): |
|||
print(string) |
|||
|
|||
|
|||
class Foo: |
|||
def __init__(self, string): |
|||
self.string = string |
|||
|
|||
def do_print(self): |
|||
__print_string(self.string) |
|||
|
|||
|
|||
example_string = "Example String to print." |
|||
|
|||
class_item = Foo(example_string) |
|||
print(class_item.string) |
|||
|
|||
class_item.do_print() |
Loading…
Reference in new issue