(cl: ClassIR, emitter: Emitter)
| 1125 | |
| 1126 | |
| 1127 | def generate_getseters(cl: ClassIR, emitter: Emitter) -> None: |
| 1128 | if not cl.is_trait: |
| 1129 | for i, (attr, rtype) in enumerate(cl.attributes.items()): |
| 1130 | generate_getter(cl, attr, rtype, emitter) |
| 1131 | emitter.emit_line("") |
| 1132 | generate_setter(cl, attr, rtype, emitter) |
| 1133 | if i < len(cl.attributes) - 1: |
| 1134 | emitter.emit_line("") |
| 1135 | for prop, (getter, setter) in cl.properties.items(): |
| 1136 | if getter.decl.implicit: |
| 1137 | continue |
| 1138 | |
| 1139 | rtype = getter.sig.ret_type |
| 1140 | emitter.emit_line("") |
| 1141 | generate_readonly_getter(cl, prop, rtype, getter, emitter) |
| 1142 | if setter: |
| 1143 | arg_type = setter.sig.args[1].type |
| 1144 | emitter.emit_line("") |
| 1145 | generate_property_setter(cl, prop, arg_type, setter, emitter) |
| 1146 | |
| 1147 | |
| 1148 | def generate_getter(cl: ClassIR, attr: str, rtype: RType, emitter: Emitter) -> None: |
no test coverage detected
searching dependent graphs…