Made stub generator produce spaces rather than tabs.

This commit is contained in:
Alexander Gorshenev
2017-11-17 13:55:44 +03:00
committed by alexander-gorshenev
parent 6b71af0043
commit 779a926b94
@@ -112,39 +112,39 @@ fun Operation.generateKotlin(parent: Interface): String {
val wasmArgList = (parent.wasmReceiverArgs + args.map{it.wasmMapping()} + parent.wasmReturnArg()).joinToString(",")
// TODO: there can be multiple Rs.
return "\tfun $kotlinTypeParameters $name(" +
return " fun $kotlinTypeParameters $name(" +
argList +
"): ${returnType.toKotlinType()} {\n" +
"\t\t${if (returnType != Void) "val wasmRetVal = " else ""}${wasmFunctionName(name, parent.name)}($wasmArgList)\n" +
" ${if (returnType != Void) "val wasmRetVal = " else ""}${wasmFunctionName(name, parent.name)}($wasmArgList)\n" +
"\t\treturn ${returnType.wasmReturnMapping("wasmRetVal")}\n"+
"\t}\n"
" return ${returnType.wasmReturnMapping("wasmRetVal")}\n"+
" }\n"
}
fun Attribute.generateKotlinSetter(parent: Interface): String {
val kotlinType = type.toKotlinType(name)
return "\t\tset(value: $kotlinType) {\n" +
"\t\t\t${wasmSetterName(name, parent.name)}(" +
return " set(value: $kotlinType) {\n" +
" ${wasmSetterName(name, parent.name)}(" +
(parent.wasmReceiverArgs + Arg("value", type).wasmMapping()).joinToString(", ") +
")\n" +
"\t\t}\n"
" }\n"
}
fun Attribute.generateKotlinGetter(parent: Interface): String {
//val kotlinType = type.toKotlinType()
return "\t\tget() {\n" +
"\t\t\tval wasmRetVal = ${wasmGetterName(name, parent.name)}(${(parent.wasmReceiverArgs + parent.wasmReturnArg()).joinToString(", ")})\n" +
"\t\t\treturn ${type.wasmReturnMapping("wasmRetVal")}\n"+
"\t\t}\n" +
"\t\n"
return " get() {\n" +
" val wasmRetVal = ${wasmGetterName(name, parent.name)}(${(parent.wasmReceiverArgs + parent.wasmReturnArg()).joinToString(", ")})\n" +
" return ${type.wasmReturnMapping("wasmRetVal")}\n"+
" }\n" +
" \n"
}
fun Attribute.generateKotlin(parent: Interface): String {
val kotlinType = type.toKotlinType(name)
return "\tvar $name: $kotlinType\n" +
(if (hasGetter) generateKotlinGetter(parent) else "\t\tget() = error(\"There is no getter for $name\")\n") +
(if (hasSetter) generateKotlinSetter(parent) else "\t\tset(_) = error(\"There is no setter for $name\")\n")
return " var $name: $kotlinType\n" +
(if (hasGetter) generateKotlinGetter(parent) else " get() = error(\"There is no getter for $name\")\n") +
(if (hasSetter) generateKotlinSetter(parent) else " set(_) = error(\"There is no setter for $name\")\n")
}
val Interface.wasmTypedReceiverArgs get() =
@@ -218,16 +218,16 @@ fun Interface.generateKotlinMembers() =
fun Interface.generateKotlinClassHeader() =
"open class $name(arena: Int, index: Int): JsValue(arena, index) {\n" +
"\tconstructor(jsValue: JsValue): this(jsValue.arena, jsValue.index)\n"
" constructor(jsValue: JsValue): this(jsValue.arena, jsValue.index)\n"
fun Interface.generateKotlinClassFooter() =
"}\n"
fun Interface.generateKotlinClassConverter() =
"val JsValue.as$name: $name\n" +
"\tget() {\n" +
"\t\treturn $name(this.arena, this.index)\n"+
"\t}\n"
" get() {\n" +
" return $name(this.arena, this.index)\n"+
" }\n"
fun Interface.generateKotlin(): String {
@@ -256,9 +256,9 @@ fun Arg.composeWasmArgs(): String {
is Void -> error("An arg can not be Void")
is Integer -> ""
is Floating -> ""
is idlString -> "\t\t$name = toUTF16String(${name}Ptr, ${name}Len);\n"
is idlString -> " $name = toUTF16String(${name}Ptr, ${name}Len);\n"
is Object -> TODO("implement me")
is Function -> "\t\t$name = konan_dependencies.env.Konan_js_wrapLambda(lambdaResultArena, ${name}Index);\n"
is Function -> " $name = konan_dependencies.env.Konan_js_wrapLambda(lambdaResultArena, ${name}Index);\n"
is InterfaceRef -> TODO("Implement me")
else -> error("Unexpected type")
@@ -274,11 +274,11 @@ fun Operation.generateJs(parent: Interface): String {
val argList = args.map { it.name }. joinToString(", ")
val composedArgsList = args.map { it.composeWasmArgs() }. joinToString("")
return "\n\t${wasmFunctionName(this.name, parent.name)}: function($wasmMapping) {\n" +
return "\n ${wasmFunctionName(this.name, parent.name)}: function($wasmMapping) {\n" +
composedArgsList +
"\t\tvar result = ${parent.receiver}$name($argList);\n" +
(if (returnType == Void) "" else "\t\treturn toArena(resultArena, result);\n") +
"\t}"
" var result = ${parent.receiver}$name($argList);\n" +
(if (returnType == Void) "" else " return toArena(resultArena, result);\n") +
" }"
}
val Interface.wasmReceiverArgName get() =
@@ -294,19 +294,19 @@ fun Attribute.generateJsSetter(parent: Interface): String {
val valueArg = Arg("value", type)
val allArgs = parent.wasmReceiverArgName + valueArg.wasmArgNames()
val wasmMapping = allArgs.joinToString(", ")
return "\n\t${wasmSetterName(name, parent.name)}: function($wasmMapping) {\n" +
return "\n ${wasmSetterName(name, parent.name)}: function($wasmMapping) {\n" +
valueArg.composeWasmArgs() +
"\t\t${parent.receiver}$name = value;\n" +
"\t}"
" ${parent.receiver}$name = value;\n" +
" }"
}
fun Attribute.generateJsGetter(parent: Interface): String {
val allArgs = parent.wasmReceiverArgName + wasmReturnArgName
val wasmMapping = allArgs.joinToString(", ")
return "\n\t${wasmGetterName(name, parent.name)}: function($wasmMapping) {\n" +
"\t\tvar result = ${parent.receiver}$name;\n" +
"\t\treturn toArena(resultArena, result);\n" +
"\t}"
return "\n ${wasmGetterName(name, parent.name)}: function($wasmMapping) {\n" +
" var result = ${parent.receiver}$name;\n" +
" return toArena(resultArena, result);\n" +
" }"
}
fun Attribute.generateJs(parent: Interface) =