generate method
void
generate({})
Generates necessary code for a SteamInitializer
Implementation
void generate({
required IOSink fileSink,
Set<String> enumSet = const {},
Set<String> structSet = const {},
Set<String> callbackStructSet = const {},
}) {
fileSink.writeln(
"// ignore_for_file: public_member_api_docs, always_specify_types, avoid_positional_boolean_parameters, avoid_classes_with_only_static_members",
);
fileSink.writeImport(
packageName: "dart:ffi",
);
fileSink.writeImport(
packageName: "package:ffi/ffi.dart",
);
methods.generateImport(
fileSink: fileSink,
enumSet: enumSet,
structSet: structSet,
callbackStructSet: callbackStructSet,
);
fileSink.writeImport(
packageName: "../dl.dart",
);
fileSink.writeImport(
packageName: "../typedefs.dart",
);
String correctedName = name.clearSteamNaming().pascalCase;
methods.generateLookup(
fileSink: fileSink,
owner: correctedName,
isStatic: true,
);
fileSink.writeClass(
className: correctedName,
);
fileSink.writeStartBlock();
methods.generate(
fileSink: fileSink,
owner: correctedName,
isStatic: true,
);
fileSink.writeEndBlock();
}