mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-22 23:35:22 +00:00
change the type of mangleJsName; fixes CStringConv warnings (#19852)
change the type of mangleJsName since mangleJsName is used in macros, there is no need to use cstring. Using cstring may increase conversions and cause warnings.
This commit is contained in:
@@ -64,7 +64,7 @@ proc validJsName(name: string): bool =
|
||||
if chr notin {'A'..'Z','a'..'z','_','$','0'..'9'}:
|
||||
return false
|
||||
|
||||
template mangleJsName(name: cstring): cstring =
|
||||
template mangleJsName(name: string): string =
|
||||
inc nameCounter
|
||||
"mangledName" & $nameCounter
|
||||
|
||||
@@ -233,7 +233,7 @@ macro `.`*(obj: JsObject, field: untyped): JsObject =
|
||||
helper(`obj`)
|
||||
else:
|
||||
if not mangledNames.hasKey($field):
|
||||
mangledNames[$field] = $mangleJsName($field)
|
||||
mangledNames[$field] = mangleJsName($field)
|
||||
let importString = "#." & mangledNames[$field]
|
||||
result = quote do:
|
||||
proc helper(o: JsObject): JsObject
|
||||
@@ -251,7 +251,7 @@ macro `.=`*(obj: JsObject, field, value: untyped): untyped =
|
||||
helper(`obj`, `value`)
|
||||
else:
|
||||
if not mangledNames.hasKey($field):
|
||||
mangledNames[$field] = $mangleJsName($field)
|
||||
mangledNames[$field] = mangleJsName($field)
|
||||
let importString = "#." & mangledNames[$field] & " = #"
|
||||
result = quote do:
|
||||
proc helper(o: JsObject, v: auto)
|
||||
@@ -282,7 +282,7 @@ macro `.()`*(obj: JsObject,
|
||||
importString = "#." & $field & "(@)"
|
||||
else:
|
||||
if not mangledNames.hasKey($field):
|
||||
mangledNames[$field] = $mangleJsName($field)
|
||||
mangledNames[$field] = mangleJsName($field)
|
||||
importString = "#." & mangledNames[$field] & "(@)"
|
||||
result = quote:
|
||||
proc helper(o: JsObject): JsObject
|
||||
@@ -302,7 +302,7 @@ macro `.`*[K: cstring, V](obj: JsAssoc[K, V],
|
||||
importString = "#." & $field
|
||||
else:
|
||||
if not mangledNames.hasKey($field):
|
||||
mangledNames[$field] = $mangleJsName($field)
|
||||
mangledNames[$field] = mangleJsName($field)
|
||||
importString = "#." & mangledNames[$field]
|
||||
result = quote do:
|
||||
proc helper(o: type(`obj`)): `obj`.V
|
||||
@@ -319,7 +319,7 @@ macro `.=`*[K: cstring, V](obj: JsAssoc[K, V],
|
||||
importString = "#." & $field & " = #"
|
||||
else:
|
||||
if not mangledNames.hasKey($field):
|
||||
mangledNames[$field] = $mangleJsName($field)
|
||||
mangledNames[$field] = mangleJsName($field)
|
||||
importString = "#." & mangledNames[$field] & " = #"
|
||||
result = quote do:
|
||||
proc helper(o: type(`obj`), v: `obj`.V)
|
||||
|
||||
Reference in New Issue
Block a user