(f)
| 1255 | def interface(ctype: str, cpptype: str, |
| 1256 | name: Optional[str] = None) -> Callable: |
| 1257 | def with_interface(f): |
| 1258 | n = name or f.__name__ |
| 1259 | h = Interface(n, ctype, cpptype) |
| 1260 | f(h) |
| 1261 | h.generate() |
| 1262 | |
| 1263 | @wraps(f) |
| 1264 | def decorated(*args, **kwargs): |
| 1265 | return f(*args, **kwargs) |
| 1266 | |
| 1267 | return decorated |
| 1268 | |
| 1269 | return with_interface |
| 1270 |