rokojori-godot/rokojori-cpp-generator/builds/cpp-creation/members/Signal.js

30 lines
1.2 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Signal = void 0;
const GodotTypes_1 = require("../GodotTypes");
const MemberType_1 = require("../MemberType");
const Member_1 = require("./Member");
class Signal extends Member_1.Member {
constructor(memberInitializer) {
super(MemberType_1.MemberType.Signal, memberInitializer);
}
parseBody(body) {
return this.parseMethodParameters(body);
}
getHeaderDefinition() {
return "\n " + this.info();
}
getBindings(className) {
//ADD_SIGNAL(MethodInfo("session_supported", PropertyInfo(Variant::STRING, "session_mode"), PropertyInfo(Variant::BOOL, "supported")));
let parameterInfos = "";
for (let i = 0; i < this.parameters.length; i++) {
let type = GodotTypes_1.GodotTypes.stringToVariantType(this.parameters[i].type);
let name = this.parameters[i].name;
let pi = `, PropertyInfo(Variant::${type}, "${name}")`;
parameterInfos += pi;
}
return `ADD_SIGNAL (MethodInfo( "${this.name}" ${parameterInfos}) );`;
}
}
exports.Signal = Signal;
//# sourceMappingURL=Signal.js.map