windowsCppStubContent function
Returns the content of a windows/src/Hybrid${className}.cpp stub.
Windows always uses MSVC-compatible static-initializer registration because
__attribute__((constructor)) is not available on MSVC.
Implementation
String windowsCppStubContent({
required String lib,
required String className,
}) =>
'// Hybrid$className — WindowsNativeImpl.cpp implementation.\n'
'// Generated by nitrogen link. Fill in the method bodies.\n'
'#include "../../lib/src/generated/cpp/$lib.native.g.h"\n'
'\n'
'#include <string>\n'
'\n'
'class Hybrid${className}Impl final : public Hybrid$className {\n'
'public:\n'
' // TODO: implement all pure-virtual methods declared in Hybrid$className\n'
'};\n'
'\n'
'// MSVC static-initializer auto-registration (no __attribute__((constructor)) on Windows).\n'
'namespace {\n'
' struct _AutoRegister {\n'
' _AutoRegister() { ${lib}_register_impl(new Hybrid${className}Impl()); }\n'
' };\n'
' static _AutoRegister _auto_register_instance;\n'
'}\n';