diff --git a/languages/cpp/language.config.json b/languages/cpp/language.config.json index ef6d63b1..db9b7ddc 100644 --- a/languages/cpp/language.config.json +++ b/languages/cpp/language.config.json @@ -6,7 +6,6 @@ "unwrapResultObjects": false, "createPolymorphicMethods": true, "excludeDeclarations": true, - "overrideRule": true, "aggregateFiles": [ "/include/firebolt.h", "/src/firebolt.cpp" @@ -22,12 +21,7 @@ "/src/jsondata_module.h" ], "persistPermission": true, - "primitives": { - "boolean": "bool", - "integer": "int32_t", - "number": "float", - "string": "std::string" - }, + "primitives": {}, "langVersion" : "c++17", "additionalSchemaTemplates": [ "json-types" ], "additionalMethodTemplates": [ "declarations", "declarations-override" ] diff --git a/languages/cpp/templates/types/boolean.h b/languages/cpp/templates/types/boolean.h new file mode 100644 index 00000000..fc75f206 --- /dev/null +++ b/languages/cpp/templates/types/boolean.h @@ -0,0 +1 @@ +bool \ No newline at end of file diff --git a/languages/cpp/templates/types/integer.h b/languages/cpp/templates/types/integer.h new file mode 100644 index 00000000..33028e0f --- /dev/null +++ b/languages/cpp/templates/types/integer.h @@ -0,0 +1 @@ +int32_t \ No newline at end of file diff --git a/languages/cpp/templates/types/number.h b/languages/cpp/templates/types/number.h new file mode 100644 index 00000000..05eeb48f --- /dev/null +++ b/languages/cpp/templates/types/number.h @@ -0,0 +1 @@ +float \ No newline at end of file diff --git a/languages/cpp/templates/types/string.h b/languages/cpp/templates/types/string.h new file mode 100644 index 00000000..c6d1c815 --- /dev/null +++ b/languages/cpp/templates/types/string.h @@ -0,0 +1 @@ +std::string \ No newline at end of file diff --git a/src/macrofier/index.mjs b/src/macrofier/index.mjs index 6f2a6c4b..04cdd9fb 100644 --- a/src/macrofier/index.mjs +++ b/src/macrofier/index.mjs @@ -54,7 +54,6 @@ const macrofy = async ( additionalSchemaTemplates, additionalMethodTemplates, excludeDeclarations, - overrideRule, aggregateFiles, operators, primitives, @@ -111,7 +110,6 @@ const macrofy = async ( typer.setPrimitives(primitives) typer.setAllocatedPrimitiveProxies(allocatedPrimitiveProxies) typer.setConvertTuples(convertTuplesToArraysOrObjects) - typer.setOverrideRule(overrideRule) let templatesPermission = {} if (persistPermission) { diff --git a/src/macrofier/types.mjs b/src/macrofier/types.mjs index 4dfede00..a12c76ea 100644 --- a/src/macrofier/types.mjs +++ b/src/macrofier/types.mjs @@ -21,10 +21,9 @@ import { getPath, localizeDependencies } from '../shared/json-schema.mjs' import path from "path" let convertTuplesToArraysOrObjects = false -let overrideRule = false const templates = {} const state = {} -const primitives = { +let primitives = { "integer": "number", "number": "number", "boolean": "boolean", @@ -40,7 +39,9 @@ function setTemplates(t) { } function setPrimitives(p) { - Object.assign(primitives, p) + if (p) { + primitives = p + } } function setConvertTuples(t) { @@ -51,10 +52,6 @@ function setAllocatedPrimitiveProxies(m) { Object.assign(allocatedPrimitiveProxies, m) } -function setOverrideRule(rule) { - overrideRule = rule -} - const capitalize = str => str ? str[0].toUpperCase() + str.substr(1) : str const indent = (str, padding) => { let first = true @@ -389,7 +386,7 @@ const insertTupleMacros = (content, schema, module, title, options) => { const getPrimitiveType = (type, templateDir = 'types') => { const template = getTemplate(path.join(templateDir, type)) || getTemplate(path.join(templateDir, 'generic')) - return overrideRule === true ? (template || primitives[type]) : (primitives[type] || template) + return (primitives[type] || template) } const pickBestType = types => Array.isArray(types) ? types.find(t => t !== 'null') : types @@ -799,7 +796,6 @@ export default { setPrimitives, setConvertTuples, setAllocatedPrimitiveProxies, - setOverrideRule, getMethodSignatureParams, getMethodSignatureResult, getSchemaShape, diff --git a/src/sdk/index.mjs b/src/sdk/index.mjs index a465f84c..763b6c9e 100755 --- a/src/sdk/index.mjs +++ b/src/sdk/index.mjs @@ -70,7 +70,6 @@ const run = async ({ additionalSchemaTemplates: config.additionalSchemaTemplates, additionalMethodTemplates: config.additionalMethodTemplates, excludeDeclarations: config.excludeDeclarations, - overrideRule: config.overrideRule, staticModuleNames: staticModuleNames, hideExcluded: true, aggregateFiles: config.aggregateFiles,