build(generator): create AST tree with all includes and type definitions

This commit is contained in:
SpaiR committed 2024-08-11 12:08:35 +03:00
1 parent 7b8ca029c0
commit 746c4887b8
11 files changed
+28209 -4921

No files matched your search

+9 -13
View File
@@ -52,18 +52,14 @@ tasks.register('buildAll') { t ->
tasks.register('generateAst', GenerateAst) { tasks.register('generateAst', GenerateAst) {
headerFiles = [ headerFiles = [
(file('include/imgui/imgui.h')): [], file('include/imgui/imgui.h'),
(file('include/imgui/imgui_internal.h')): [ file('include/imgui/imgui_internal.h'),
"#define IMGUI_HAS_TABLE", file('include/ImGuiFileDialog/ImGuiFileDialog.h'),
"#define IMGUI_HAS_VIEWPORT", file('include/imgui-knobs/imgui-knobs.h'),
"#define IMGUI_HAS_DOCK", file('include/imguizmo/ImGuizmo.h'),
], file('include/imnodes/imnodes.h'),
(file('include/ImGuiFileDialog/ImGuiFileDialog.h')): [], file('include/implot/implot.h'),
(file('include/imgui-knobs/imgui-knobs.h')): [], file('include/imgui-node-editor/imgui_node_editor.h'),
(file('include/imguizmo/ImGuizmo.h')): [], file('include/ImGuiColorTextEdit/TextEditor.h'),
(file('include/imnodes/imnodes.h')): [],
(file('include/implot/implot.h')): [],
(file('include/imgui-node-editor/imgui_node_editor.h')): [],
(file('include/ImGuiColorTextEdit/TextEditor.h')): [],
] ]
} }
@@ -4,17 +4,15 @@ import com.fasterxml.jackson.annotation.JsonInclude
import com.fasterxml.jackson.databind.JsonNode import com.fasterxml.jackson.databind.JsonNode
import com.fasterxml.jackson.databind.ObjectMapper import com.fasterxml.jackson.databind.ObjectMapper
import com.fasterxml.jackson.databind.SerializationFeature import com.fasterxml.jackson.databind.SerializationFeature
import com.fasterxml.jackson.databind.node.ObjectNode
import com.lordcodes.turtle.shellRun import com.lordcodes.turtle.shellRun
import org.gradle.api.DefaultTask import org.gradle.api.DefaultTask
import org.gradle.api.tasks.Input import org.gradle.api.tasks.InputFiles
import org.gradle.api.tasks.Internal import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.TaskAction
import tool.generator.ast.* import tool.generator.ast.*
import java.io.File import java.io.File
import java.math.BigInteger import java.math.BigInteger
import java.security.MessageDigest import java.security.MessageDigest
import java.util.*
open class GenerateAst : DefaultTask() { open class GenerateAst : DefaultTask() {
@Internal @Internal
@@ -23,23 +21,14 @@ open class GenerateAst : DefaultTask() {
@Internal @Internal
override fun getDescription() = "Generate AST tree for declared header files." override fun getDescription() = "Generate AST tree for declared header files."
@Input @InputFiles
lateinit var headerFiles: Map<File, Collection<String>> lateinit var headerFiles: Collection<File>
private val dstDir: File = File("${project.rootDir}/buildSrc/src/main/resources/${AstParser.RESOURCE_PATH}") private val dstDir: File = File("${project.rootDir}/buildSrc/src/main/resources/${AstParser.RESOURCE_PATH}")
private val objectMapper: ObjectMapper = ObjectMapper() private val objectMapper: ObjectMapper = ObjectMapper()
/** // Content of the currently parsed header file. Can be used during parsing to extract additional information.
* During the parsing of ast-dump we need to access an initial header file content. private lateinit var currentParsingHeaderContent: String
* Required for cases like: get the content of the file (comment or default param value) by offset pos in file.
*/
private var currentParsingHeaderContent: String = ""
/**
* This is used only to log stuff properly.
*/
private var currentParsingIndent: Int = 0
init { init {
objectMapper.configure(SerializationFeature.INDENT_OUTPUT, true) objectMapper.configure(SerializationFeature.INDENT_OUTPUT, true)
@@ -57,20 +46,17 @@ open class GenerateAst : DefaultTask() {
logger.info("Processing headers...") logger.info("Processing headers...")
headerFiles.forEach { (header, defines) -> headerFiles.forEach { header ->
System.gc() System.gc()
logger.info("| $header") logger.info("| $header")
// Store the header content in the field, so we can access it when parsing. // Read the header.
currentParsingHeaderContent = header.readText() currentParsingHeaderContent = header.readText()
// Header hash content to create a unique path for generated content. // Header hash content to create a unique path for generated content.
val headerHash = md5Hash(currentParsingHeaderContent) val headerHash = md5Hash(currentParsingHeaderContent)
// Append additional defines if provided.
currentParsingHeaderContent = defines.joinToString("\n") + currentParsingHeaderContent
// We create a unique folder to store files generated for the header. // We create a unique folder to store files generated for the header.
// This is necessary because when we store all headers in the same directory, // This is necessary because when we store all headers in the same directory,
// their AST dump can overlap with each other. // their AST dump can overlap with each other.
@@ -78,21 +64,16 @@ open class GenerateAst : DefaultTask() {
mkdirs() mkdirs()
} }
// Move the header content to the temp file to make an ast-dump of it.
val headerName = header.nameWithoutExtension
val tmpHeaderFile = File("$astBuildDir/$headerName.h")
tmpHeaderFile.createNewFile()
tmpHeaderFile.writeText(currentParsingHeaderContent)
logger.info(" | Making an ast-dump...") logger.info(" | Making an ast-dump...")
// Destination for ast-dump. // Destination for ast-dump.
val headerName = header.nameWithoutExtension
val astBumpJson = File("$astBuildDir/$headerName.json") val astBumpJson = File("$astBuildDir/$headerName.json")
// Call clang++ with the script. // Call clang++ with the script.
// During the process of making an ast-dump there could be errors/warnings. // During the process of making an ast-dump there could be errors/warnings.
// Thus making a call like that can help to ignore them. // Thus making a call like that can help to ignore them.
callClangAstBump(scriptPath, tmpHeaderFile, astBumpJson) callClangAstBump(scriptPath, header, astBumpJson)
logger.info(" | Processing an ast-dump result: $astBumpJson...") logger.info(" | Processing an ast-dump result: $astBumpJson...")
@@ -103,36 +84,8 @@ open class GenerateAst : DefaultTask() {
parseDeclNode0(topDecl)?.let(fullDeclsList::add) parseDeclNode0(topDecl)?.let(fullDeclsList::add)
} }
//////////////
// After parsing the entire header file, we need to remove unnecessary information from it.
// So we pre-process the initial content and parse it again.
// This way, we can compare the initial result with the trimmed version
// to remove types and declarations that represent compiler information.
// Remove all includes and typedefs.
// They are not needed to process the AST, but they add extra information to the final dump.
// And since we want to have an ast-dump as minimal as possible we remove that information.
currentParsingHeaderContent = currentParsingHeaderContent
.replace("#include .*".toRegex(), "")
.replace("typedef .*".toRegex(), "")
// Re-write with pre-processed content.
tmpHeaderFile.writeText(currentParsingHeaderContent)
callClangAstBump(scriptPath, tmpHeaderFile, astBumpJson)
// As its said - we do the parsing once again, but now the final result won't contain std types.
val strippedDeclsList = mutableListOf<Decl>()
objectMapper.readTree(astBumpJson).get("inner").forEach { topDecl ->
parseDeclNode0(topDecl)?.let(strippedDeclsList::add)
}
logger.info(" | Removing an ast-decls diff...")
val resultDeclsList = removeAstDiff(fullDeclsList, strippedDeclsList)
logger.info(" | Sorting an ast-decls...") logger.info(" | Sorting an ast-decls...")
sortDecls0(resultDeclsList) sortDecls0(fullDeclsList)
/////////////// ///////////////
// In the end we write down the ast-decls result to the file. // In the end we write down the ast-decls result to the file.
@@ -154,7 +107,7 @@ open class GenerateAst : DefaultTask() {
command("git", listOf("rev-parse", "HEAD")) command("git", listOf("rev-parse", "HEAD"))
}, },
), ),
decls = resultDeclsList decls = fullDeclsList
) )
) )
} }
@@ -162,11 +115,11 @@ open class GenerateAst : DefaultTask() {
private fun parseDeclNode0(declNode: JsonNode): Decl? { private fun parseDeclNode0(declNode: JsonNode): Decl? {
fun logParsingDecl(name: String) { fun logParsingDecl(name: String) {
logger.info(" ${" ".repeat(currentParsingIndent)}| Parsing $name...") logger.info("| Parsing $name...")
} }
fun logParsingInner(name: String) { fun logParsingInner(name: String) {
logger.info(" ${" ".repeat(currentParsingIndent)}| $name") logger.info(" | $name")
} }
fun JsonNode.hasNoName(): Boolean { fun JsonNode.hasNoName(): Boolean {
@@ -188,7 +141,7 @@ open class GenerateAst : DefaultTask() {
return loc.get("offset")?.asInt() ?: -1 return loc.get("offset")?.asInt() ?: -1
} }
fun JsonNode.getDefaultParamValue(): String { fun JsonNode.getDefaultParamValue(): String? {
fun getOffset(jsonNode: JsonNode): Pair<Int, Int> { fun getOffset(jsonNode: JsonNode): Pair<Int, Int> {
val loc = if (jsonNode.has("expansionLoc")) { val loc = if (jsonNode.has("expansionLoc")) {
jsonNode.get("expansionLoc") jsonNode.get("expansionLoc")
@@ -197,10 +150,31 @@ open class GenerateAst : DefaultTask() {
} }
return loc.get("offset").asInt() to loc.get("tokLen").asInt() return loc.get("offset").asInt() to loc.get("tokLen").asInt()
} }
return get("inner").get(0).get("range").let { range -> return findValue("inner").findValue("range").let { range ->
val (beginOffset, _) = getOffset(range.get("begin")) val (beginOffset, _) = getOffset(range.get("begin"))
val (endOffset, endTokLoc) = getOffset(range.get("end")) val (endOffset, endTokLoc) = getOffset(range.get("end"))
currentParsingHeaderContent.substring(beginOffset, endOffset + endTokLoc) if (endOffset + endTokLoc < currentParsingHeaderContent.length) {
currentParsingHeaderContent.substring(beginOffset, endOffset + endTokLoc)
} else {
null
}
}
}
// Ignore declaration nodes with technical information.
// This information can be specific for the OS where the script was called.
declNode.findValue("name")?.asText()?.let {
if (it.startsWith("_")
|| it.startsWith("operator")
|| it.startsWith("rus")
|| it.startsWith("sig")
|| it.startsWith("proc_")
) {
return null
}
when (it) {
"std", "timeval", "wait", "rlimit" -> return null
else -> null // do nothing
} }
} }
@@ -221,11 +195,9 @@ open class GenerateAst : DefaultTask() {
logParsingDecl("namespace $name") logParsingDecl("namespace $name")
currentParsingIndent++
declNode.get("inner").forEach { innerDecl -> declNode.get("inner").forEach { innerDecl ->
parseDeclNode0(innerDecl)?.let(decls::add) parseDeclNode0(innerDecl)?.let(decls::add)
} }
currentParsingIndent--
return AstNamespaceDecl(offset, name, decls) return AstNamespaceDecl(offset, name, decls)
} }
@@ -240,11 +212,9 @@ open class GenerateAst : DefaultTask() {
logParsingDecl("full comment") logParsingDecl("full comment")
currentParsingIndent++
declNode.get("inner").forEach { innerDecl -> declNode.get("inner").forEach { innerDecl ->
parseDeclNode0(innerDecl)?.let(decls::add) parseDeclNode0(innerDecl)?.let(decls::add)
} }
currentParsingIndent--
return AstFullComment(offset, decls) return AstFullComment(offset, decls)
} }
@@ -259,11 +229,9 @@ open class GenerateAst : DefaultTask() {
logParsingDecl("paragraph comment") logParsingDecl("paragraph comment")
currentParsingIndent++
declNode.get("inner").forEach { innerDecl -> declNode.get("inner").forEach { innerDecl ->
parseDeclNode0(innerDecl)?.let(decls::add) parseDeclNode0(innerDecl)?.let(decls::add)
} }
currentParsingIndent--
return AstParagraphComment(offset, decls) return AstParagraphComment(offset, decls)
} }
@@ -283,11 +251,9 @@ open class GenerateAst : DefaultTask() {
logParsingDecl("function $name") logParsingDecl("function $name")
currentParsingIndent++
declNode.get("inner")?.forEach { innerDecl -> declNode.get("inner")?.forEach { innerDecl ->
parseDeclNode0(innerDecl)?.let(decls::add) parseDeclNode0(innerDecl)?.let(decls::add)
} }
currentParsingIndent--
return AstFunctionDecl(offset, name, resultType, decls) return AstFunctionDecl(offset, name, resultType, decls)
} }
@@ -329,37 +295,30 @@ open class GenerateAst : DefaultTask() {
logParsingDecl("enum $name") logParsingDecl("enum $name")
currentParsingIndent++
declNode.get("inner").forEach { innerDecl -> declNode.get("inner").forEach { innerDecl ->
parseDeclNode0(innerDecl)?.let(decls::add) parseDeclNode0(innerDecl)?.let(decls::add)
} }
currentParsingIndent
// Sort enums by their real pos in the header file. // Sort enums by their real pos in the header file.
sortDecls0(decls) sortDecls0(decls)
var order = 0 var enumDecls = decls.filterIsInstance<AstEnumConstantDecl>()
val sortedDecls = decls.map { decl -> val otherDecls = decls - enumDecls.toSet()
if (decl is AstEnumConstantDecl) {
if (order == 0 && decl.value != null) {
order = decl.value.toIntOrNull() ?: 0
}
AstEnumConstantDecl( var order = 0
decl.offset, enumDecls = enumDecls.mapIndexed { idx, decl ->
decl.name, AstEnumConstantDecl(
decl.docComment, decl.offset,
decl.qualType, decl.name,
order++, decl.docComment,
decl.value, decl.qualType,
decl.evaluatedValue order++,
) decl.value,
} else { lookupEnumEvaluatedValue0(enumDecls, idx).toString(),
decl )
}
} }
return AstEnumDecl(offset, name, sortedDecls) return AstEnumDecl(offset, name, otherDecls + enumDecls)
} }
"EnumConstantDecl" -> { "EnumConstantDecl" -> {
@@ -377,7 +336,7 @@ open class GenerateAst : DefaultTask() {
} }
} }
val evaluatedValue: String? = findNode0(declNode, "kind", "ConstantExpr")?.get("value")?.asText() val evaluatedValue: Int? = declNode.findValue("value")?.asInt()
val docComment: String? = declNode.findValuesAsText("text")?.joinToString(" ") { it.trim() } val docComment: String? = declNode.findValuesAsText("text")?.joinToString(" ") { it.trim() }
logParsingInner("enum value $name") logParsingInner("enum value $name")
@@ -390,7 +349,7 @@ open class GenerateAst : DefaultTask() {
// We provide a proper order in EnumDecl, after sorting all enums by their offset. // We provide a proper order in EnumDecl, after sorting all enums by their offset.
-1, -1,
declValue, declValue,
evaluatedValue evaluatedValue.toString()
) )
} }
@@ -405,11 +364,9 @@ open class GenerateAst : DefaultTask() {
logParsingDecl("record $name") logParsingDecl("record $name")
currentParsingIndent++
declNode.get("inner").forEach { innerDecl -> declNode.get("inner").forEach { innerDecl ->
parseDeclNode0(innerDecl)?.let(decls::add) parseDeclNode0(innerDecl)?.let(decls::add)
} }
currentParsingIndent--
return AstRecordDecl(offset, name, decls) return AstRecordDecl(offset, name, decls)
} }
@@ -452,80 +409,44 @@ open class GenerateAst : DefaultTask() {
pb.start().waitFor() pb.start().waitFor()
} }
/**
* Function removes difference between ast-trees.
* Basically, it returns the list which contains only types with the same name.
*/
private fun removeAstDiff(fullDeclsList: List<Decl>, strippedDeclsList: List<Decl>): List<Decl> {
fun isSameNamespaceName(d1: Decl, d2: Decl): Boolean {
return d1 is AstNamespaceDecl && d2 is AstNamespaceDecl && d1.name == d2.name
}
fun isSameRecordName(d1: Decl, d2: Decl): Boolean {
return d1 is AstRecordDecl && d2 is AstRecordDecl && d1.name == d2.name
}
fun isSameEnumName(d1: Decl, d2: Decl): Boolean {
return d1 is AstEnumDecl && d2 is AstEnumDecl && d1.name == d2.name
}
fun isSameFunctionName(d1: Decl, d2: Decl): Boolean {
return d1 is AstFunctionDecl && d2 is AstFunctionDecl && d1.name == d2.name
}
return fullDeclsList
.filter { d1 ->
strippedDeclsList
.find { d2 ->
d1 == d2
|| isSameRecordName(d1, d2)
|| isSameNamespaceName(d1, d2)
|| isSameEnumName(d1, d2)
|| isSameFunctionName(d1, d2)
} != null
}
.filterNot { it is AstFunctionDecl && it.name.startsWith("operator") }
.toMutableList() // Ensure final list will be mutable for later sorting.
}
/** /**
* Sort decls in the provided list recursively using offset value. * Sort decls in the provided list recursively using offset value.
*/ */
@Suppress("JavaCollectionsStaticMethodOnImmutableList") private fun sortDecls0(decls: MutableList<Decl>) {
private fun sortDecls0(decls: List<Decl>) { decls.sortWith { d1, d2 ->
Collections.sort(decls) { d1, d2 ->
d1.offset.compareTo(d2.offset) d1.offset.compareTo(d2.offset)
} }
decls.forEach { decls.forEach {
if (it is DeclContainer) { if (it is DeclContainer) {
sortDecls0(it.decls) sortDecls0(it.decls.toMutableList())
} }
} }
} }
private fun findNode0(root: JsonNode, field: String, value: String): JsonNode? { /**
if (root.isObject) { * This method helps to find the value of the enum constant.
val objectNode = root as ObjectNode * It relies on C++ behaviour, when the value is something defined or the order of the enum itself.
val fields = objectNode.fields() */
while (fields.hasNext()) { private fun lookupEnumEvaluatedValue0(decls: List<AstEnumConstantDecl>, idx: Int): Int {
val entry = fields.next() val decl = decls[idx]
if (entry.key == field && entry.value.asText() == value) {
return root if (decl.evaluatedValue != null) {
} else { decl.evaluatedValue.toIntOrNull()?.let {
val foundNode = findNode0(entry.value, field, value) return it
if (foundNode != null) {
return foundNode
}
}
}
} else if (root.isArray) {
for (node in root) {
val foundNode = findNode0(node, field, value)
if (foundNode != null) {
return foundNode
}
} }
} }
return null
if (decl.value != null) {
decl.value.toIntOrNull()?.let {
return it
}
}
if (idx == 0) {
return 0
}
// This will behave like if we're using an order of the enum as the value.
return lookupEnumEvaluatedValue0(decls, idx - 1) + 1
} }
} }
File diff suppressed because it is too large. Load diff
@@ -13,6 +13,12 @@
"name" : "SetDrawlist", "name" : "SetDrawlist",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "drawlist",
"qualType" : "int *",
"desugaredQualType" : "int *",
"defaultValue" : "="
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -24,12 +30,6 @@
"text" : " Or pass a specific ImDrawList to draw to (e.g. ImGui::GetForegroundDrawList())." "text" : " Or pass a specific ImDrawList to draw to (e.g. ImGui::GetForegroundDrawList())."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "drawlist",
"qualType" : "int *",
"desugaredQualType" : "int *",
"defaultValue" : "="
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -50,6 +50,11 @@
"name" : "SetImGuiContext", "name" : "SetImGuiContext",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "ctx",
"qualType" : "int *",
"desugaredQualType" : "int *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -67,11 +72,6 @@
"text" : " expose method to set imgui context" "text" : " expose method to set imgui context"
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "ctx",
"qualType" : "int *",
"desugaredQualType" : "int *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -106,6 +106,11 @@
"name" : "Enable", "name" : "Enable",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "enable",
"qualType" : "bool",
"desugaredQualType" : "bool"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -117,17 +122,32 @@
"text" : " gizmo is rendered with gray half transparent color when disabled" "text" : " gizmo is rendered with gray half transparent color when disabled"
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "enable",
"qualType" : "bool",
"desugaredQualType" : "bool"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "DecomposeMatrixToComponents", "name" : "DecomposeMatrixToComponents",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "matrix",
"qualType" : "const float *",
"desugaredQualType" : "const float *"
}, {
"@type" : "AstParmVarDecl",
"name" : "translation",
"qualType" : "float *",
"desugaredQualType" : "float *"
}, {
"@type" : "AstParmVarDecl",
"name" : "rotation",
"qualType" : "float *",
"desugaredQualType" : "float *"
}, {
"@type" : "AstParmVarDecl",
"name" : "scale",
"qualType" : "float *",
"desugaredQualType" : "float *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -169,26 +189,6 @@
"text" : " These functions have some numerical stability issues for now. Use with caution." "text" : " These functions have some numerical stability issues for now. Use with caution."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "matrix",
"qualType" : "const float *",
"desugaredQualType" : "const float *"
}, {
"@type" : "AstParmVarDecl",
"name" : "translation",
"qualType" : "float *",
"desugaredQualType" : "float *"
}, {
"@type" : "AstParmVarDecl",
"name" : "rotation",
"qualType" : "float *",
"desugaredQualType" : "float *"
}, {
"@type" : "AstParmVarDecl",
"name" : "scale",
"qualType" : "float *",
"desugaredQualType" : "float *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -245,6 +245,11 @@
"name" : "SetOrthographic", "name" : "SetOrthographic",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "isOrthographic",
"qualType" : "bool",
"desugaredQualType" : "bool"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -253,26 +258,12 @@
"text" : " default is false" "text" : " default is false"
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "isOrthographic",
"qualType" : "bool",
"desugaredQualType" : "bool"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "DrawCubes", "name" : "DrawCubes",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Render a cube with face color corresponding to face normal. Usefull for debug/tests"
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "view", "name" : "view",
"qualType" : "const float *", "qualType" : "const float *",
@@ -292,6 +283,15 @@
"name" : "matrixCount", "name" : "matrixCount",
"qualType" : "int", "qualType" : "int",
"desugaredQualType" : "int" "desugaredQualType" : "int"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Render a cube with face color corresponding to face normal. Usefull for debug/tests"
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -438,21 +438,6 @@
"value" : "SCALE_X | SCALE_Y | SCALE_Z", "value" : "SCALE_X | SCALE_Y | SCALE_Z",
"evaluatedValue" : "896" "evaluatedValue" : "896"
} ] } ]
}, {
"@type" : "AstFunctionDecl",
"name" : "operator|",
"resultType" : "OPERATION",
"decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "lhs",
"qualType" : "OPERATION",
"desugaredQualType" : "ImGuizmo::OPERATION"
}, {
"@type" : "AstParmVarDecl",
"name" : "rhs",
"qualType" : "OPERATION",
"desugaredQualType" : "ImGuizmo::OPERATION"
} ]
}, { }, {
"@type" : "AstEnumDecl", "@type" : "AstEnumDecl",
"name" : "MODE", "name" : "MODE",
@@ -460,12 +445,14 @@
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "LOCAL", "name" : "LOCAL",
"qualType" : "ImGuizmo::MODE", "qualType" : "ImGuizmo::MODE",
"order" : 0 "order" : 0,
"evaluatedValue" : "0"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "WORLD", "name" : "WORLD",
"qualType" : "ImGuizmo::MODE", "qualType" : "ImGuizmo::MODE",
"order" : 1 "order" : 1,
"evaluatedValue" : "1"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -526,21 +513,6 @@
"name" : "ViewManipulate", "name" : "ViewManipulate",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Please note that this cubeview is patented by Autodesk : https://patents.google.com/patent/US7782319B2/en"
}, {
"@type" : "AstTextComment",
"text" : " It seems to be a defensive patent in the US. I don't think it will bring troubles using it as"
}, {
"@type" : "AstTextComment",
"text" : " other software are using the same mechanics. But just in case, you are now warned!"
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "view", "name" : "view",
"qualType" : "float *", "qualType" : "float *",
@@ -565,6 +537,21 @@
"name" : "backgroundColor", "name" : "backgroundColor",
"qualType" : "int", "qualType" : "int",
"desugaredQualType" : "int" "desugaredQualType" : "int"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Please note that this cubeview is patented by Autodesk : https://patents.google.com/patent/US7782319B2/en"
}, {
"@type" : "AstTextComment",
"text" : " It seems to be a defensive patent in the US. I don't think it will bring troubles using it as"
}, {
"@type" : "AstTextComment",
"text" : " other software are using the same mechanics. But just in case, you are now warned!"
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -581,6 +568,11 @@
"name" : "IsOver", "name" : "IsOver",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "op",
"qualType" : "OPERATION",
"desugaredQualType" : "ImGuizmo::OPERATION"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -589,11 +581,6 @@
"text" : " return true if the cursor is over the operation's gizmo" "text" : " return true if the cursor is over the operation's gizmo"
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "op",
"qualType" : "OPERATION",
"desugaredQualType" : "ImGuizmo::OPERATION"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -610,6 +597,11 @@
"name" : "AllowAxisFlip", "name" : "AllowAxisFlip",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "value",
"qualType" : "bool",
"desugaredQualType" : "bool"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -624,11 +616,6 @@
"text" : " When false, they always stay along the positive world/local axis" "text" : " When false, they always stay along the positive world/local axis"
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "value",
"qualType" : "bool",
"desugaredQualType" : "bool"
} ] } ]
} ] } ]
} ] } ]
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -19,142 +19,170 @@
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_NodeBackgroundHovered", "name" : "ImNodesCol_NodeBackgroundHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 1 "order" : 1,
"evaluatedValue" : "1"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_NodeBackgroundSelected", "name" : "ImNodesCol_NodeBackgroundSelected",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 2 "order" : 2,
"evaluatedValue" : "2"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_NodeOutline", "name" : "ImNodesCol_NodeOutline",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 3 "order" : 3,
"evaluatedValue" : "3"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_TitleBar", "name" : "ImNodesCol_TitleBar",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 4 "order" : 4,
"evaluatedValue" : "4"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_TitleBarHovered", "name" : "ImNodesCol_TitleBarHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 5 "order" : 5,
"evaluatedValue" : "5"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_TitleBarSelected", "name" : "ImNodesCol_TitleBarSelected",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 6 "order" : 6,
"evaluatedValue" : "6"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_Link", "name" : "ImNodesCol_Link",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 7 "order" : 7,
"evaluatedValue" : "7"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_LinkHovered", "name" : "ImNodesCol_LinkHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 8 "order" : 8,
"evaluatedValue" : "8"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_LinkSelected", "name" : "ImNodesCol_LinkSelected",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 9 "order" : 9,
"evaluatedValue" : "9"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_Pin", "name" : "ImNodesCol_Pin",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 10 "order" : 10,
"evaluatedValue" : "10"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_PinHovered", "name" : "ImNodesCol_PinHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 11 "order" : 11,
"evaluatedValue" : "11"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_BoxSelector", "name" : "ImNodesCol_BoxSelector",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 12 "order" : 12,
"evaluatedValue" : "12"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_BoxSelectorOutline", "name" : "ImNodesCol_BoxSelectorOutline",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 13 "order" : 13,
"evaluatedValue" : "13"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_GridBackground", "name" : "ImNodesCol_GridBackground",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 14 "order" : 14,
"evaluatedValue" : "14"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_GridLine", "name" : "ImNodesCol_GridLine",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 15 "order" : 15,
"evaluatedValue" : "15"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapBackground", "name" : "ImNodesCol_MiniMapBackground",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 16 "order" : 16,
"evaluatedValue" : "16"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapBackgroundHovered", "name" : "ImNodesCol_MiniMapBackgroundHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 17 "order" : 17,
"evaluatedValue" : "17"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapOutline", "name" : "ImNodesCol_MiniMapOutline",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 18 "order" : 18,
"evaluatedValue" : "18"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapOutlineHovered", "name" : "ImNodesCol_MiniMapOutlineHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 19 "order" : 19,
"evaluatedValue" : "19"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapNodeBackground", "name" : "ImNodesCol_MiniMapNodeBackground",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 20 "order" : 20,
"evaluatedValue" : "20"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapNodeBackgroundHovered", "name" : "ImNodesCol_MiniMapNodeBackgroundHovered",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 21 "order" : 21,
"evaluatedValue" : "21"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapNodeBackgroundSelected", "name" : "ImNodesCol_MiniMapNodeBackgroundSelected",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 22 "order" : 22,
"evaluatedValue" : "22"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapNodeOutline", "name" : "ImNodesCol_MiniMapNodeOutline",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 23 "order" : 23,
"evaluatedValue" : "23"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapLink", "name" : "ImNodesCol_MiniMapLink",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 24 "order" : 24,
"evaluatedValue" : "24"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapLinkSelected", "name" : "ImNodesCol_MiniMapLinkSelected",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 25 "order" : 25,
"evaluatedValue" : "25"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapCanvas", "name" : "ImNodesCol_MiniMapCanvas",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 26 "order" : 26,
"evaluatedValue" : "26"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_MiniMapCanvasOutline", "name" : "ImNodesCol_MiniMapCanvasOutline",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 27 "order" : 27,
"evaluatedValue" : "27"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesCol_COUNT", "name" : "ImNodesCol_COUNT",
"qualType" : "ImNodesCol_", "qualType" : "ImNodesCol_",
"order" : 28 "order" : 28,
"evaluatedValue" : "28"
} ] } ]
}, { }, {
"@type" : "AstEnumDecl", "@type" : "AstEnumDecl",
@@ -170,77 +198,92 @@
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_NodeCornerRounding", "name" : "ImNodesStyleVar_NodeCornerRounding",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 1 "order" : 1,
"evaluatedValue" : "1"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_NodePadding", "name" : "ImNodesStyleVar_NodePadding",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 2 "order" : 2,
"evaluatedValue" : "2"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_NodeBorderThickness", "name" : "ImNodesStyleVar_NodeBorderThickness",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 3 "order" : 3,
"evaluatedValue" : "3"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_LinkThickness", "name" : "ImNodesStyleVar_LinkThickness",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 4 "order" : 4,
"evaluatedValue" : "4"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_LinkLineSegmentsPerLength", "name" : "ImNodesStyleVar_LinkLineSegmentsPerLength",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 5 "order" : 5,
"evaluatedValue" : "5"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_LinkHoverDistance", "name" : "ImNodesStyleVar_LinkHoverDistance",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 6 "order" : 6,
"evaluatedValue" : "6"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_PinCircleRadius", "name" : "ImNodesStyleVar_PinCircleRadius",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 7 "order" : 7,
"evaluatedValue" : "7"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_PinQuadSideLength", "name" : "ImNodesStyleVar_PinQuadSideLength",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 8 "order" : 8,
"evaluatedValue" : "8"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_PinTriangleSideLength", "name" : "ImNodesStyleVar_PinTriangleSideLength",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 9 "order" : 9,
"evaluatedValue" : "9"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_PinLineThickness", "name" : "ImNodesStyleVar_PinLineThickness",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 10 "order" : 10,
"evaluatedValue" : "10"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_PinHoverRadius", "name" : "ImNodesStyleVar_PinHoverRadius",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 11 "order" : 11,
"evaluatedValue" : "11"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_PinOffset", "name" : "ImNodesStyleVar_PinOffset",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 12 "order" : 12,
"evaluatedValue" : "12"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_MiniMapPadding", "name" : "ImNodesStyleVar_MiniMapPadding",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 13 "order" : 13,
"evaluatedValue" : "13"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_MiniMapOffset", "name" : "ImNodesStyleVar_MiniMapOffset",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 14 "order" : 14,
"evaluatedValue" : "14"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesStyleVar_COUNT", "name" : "ImNodesStyleVar_COUNT",
"qualType" : "ImNodesStyleVar_", "qualType" : "ImNodesStyleVar_",
"order" : 15 "order" : 15,
"evaluatedValue" : "15"
} ] } ]
}, { }, {
"@type" : "AstEnumDecl", "@type" : "AstEnumDecl",
@@ -274,32 +317,38 @@
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesPinShape_Circle", "name" : "ImNodesPinShape_Circle",
"qualType" : "ImNodesPinShape_", "qualType" : "ImNodesPinShape_",
"order" : 0 "order" : 0,
"evaluatedValue" : "0"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesPinShape_CircleFilled", "name" : "ImNodesPinShape_CircleFilled",
"qualType" : "ImNodesPinShape_", "qualType" : "ImNodesPinShape_",
"order" : 1 "order" : 1,
"evaluatedValue" : "1"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesPinShape_Triangle", "name" : "ImNodesPinShape_Triangle",
"qualType" : "ImNodesPinShape_", "qualType" : "ImNodesPinShape_",
"order" : 2 "order" : 2,
"evaluatedValue" : "2"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesPinShape_TriangleFilled", "name" : "ImNodesPinShape_TriangleFilled",
"qualType" : "ImNodesPinShape_", "qualType" : "ImNodesPinShape_",
"order" : 3 "order" : 3,
"evaluatedValue" : "3"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesPinShape_Quad", "name" : "ImNodesPinShape_Quad",
"qualType" : "ImNodesPinShape_", "qualType" : "ImNodesPinShape_",
"order" : 4 "order" : 4,
"evaluatedValue" : "4"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesPinShape_QuadFilled", "name" : "ImNodesPinShape_QuadFilled",
"qualType" : "ImNodesPinShape_", "qualType" : "ImNodesPinShape_",
"order" : 5 "order" : 5,
"evaluatedValue" : "5"
} ] } ]
}, { }, {
"@type" : "AstEnumDecl", "@type" : "AstEnumDecl",
@@ -475,22 +524,26 @@
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesMiniMapLocation_BottomLeft", "name" : "ImNodesMiniMapLocation_BottomLeft",
"qualType" : "ImNodesMiniMapLocation_", "qualType" : "ImNodesMiniMapLocation_",
"order" : 0 "order" : 0,
"evaluatedValue" : "0"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesMiniMapLocation_BottomRight", "name" : "ImNodesMiniMapLocation_BottomRight",
"qualType" : "ImNodesMiniMapLocation_", "qualType" : "ImNodesMiniMapLocation_",
"order" : 1 "order" : 1,
"evaluatedValue" : "1"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesMiniMapLocation_TopLeft", "name" : "ImNodesMiniMapLocation_TopLeft",
"qualType" : "ImNodesMiniMapLocation_", "qualType" : "ImNodesMiniMapLocation_",
"order" : 2 "order" : 2,
"evaluatedValue" : "2"
}, { }, {
"@type" : "AstEnumConstantDecl", "@type" : "AstEnumConstantDecl",
"name" : "ImNodesMiniMapLocation_TopRight", "name" : "ImNodesMiniMapLocation_TopRight",
"qualType" : "ImNodesMiniMapLocation_", "qualType" : "ImNodesMiniMapLocation_",
"order" : 3 "order" : 3,
"evaluatedValue" : "3"
} ] } ]
}, { }, {
"@type" : "AstRecordDecl", "@type" : "AstRecordDecl",
@@ -525,6 +578,11 @@
"name" : "SetImGuiContext", "name" : "SetImGuiContext",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "ctx",
"qualType" : "ImGuiContext *",
"desugaredQualType" : "ImGuiContext *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -536,11 +594,6 @@
"text" : " function sets the GImGui global variable, which is not shared across dll boundaries." "text" : " function sets the GImGui global variable, which is not shared across dll boundaries."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "ctx",
"qualType" : "ImGuiContext *",
"desugaredQualType" : "ImGuiContext *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -673,18 +726,6 @@
"name" : "MiniMap", "name" : "MiniMap",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Add a navigable minimap to the editor; call before EndNodeEditor after all"
}, {
"@type" : "AstTextComment",
"text" : " nodes and links have been specified"
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "minimap_size_fraction", "name" : "minimap_size_fraction",
"qualType" : "const float", "qualType" : "const float",
@@ -708,21 +749,24 @@
"qualType" : "const ImNodesMiniMapNodeHoveringCallbackUserData", "qualType" : "const ImNodesMiniMapNodeHoveringCallbackUserData",
"desugaredQualType" : "void *const", "desugaredQualType" : "void *const",
"defaultValue" : "NULL" "defaultValue" : "NULL"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Add a navigable minimap to the editor; call before EndNodeEditor after all"
}, {
"@type" : "AstTextComment",
"text" : " nodes and links have been specified"
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "PushColorStyle", "name" : "PushColorStyle",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Use PushColorStyle and PopColorStyle to modify ImNodesStyle::Colors mid-frame."
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "item", "name" : "item",
"qualType" : "ImNodesCol", "qualType" : "ImNodesCol",
@@ -732,6 +776,15 @@
"name" : "color", "name" : "color",
"qualType" : "unsigned int", "qualType" : "unsigned int",
"desugaredQualType" : "unsigned int" "desugaredQualType" : "unsigned int"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Use PushColorStyle and PopColorStyle to modify ImNodesStyle::Colors mid-frame."
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -783,6 +836,11 @@
"name" : "BeginNode", "name" : "BeginNode",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "id",
"qualType" : "int",
"desugaredQualType" : "int"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -791,11 +849,6 @@
"text" : " id can be any positive or negative integer, but INT_MIN is currently reserved for internal use." "text" : " id can be any positive or negative integer, but INT_MIN is currently reserved for internal use."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "id",
"qualType" : "int",
"desugaredQualType" : "int"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -840,15 +893,6 @@
"name" : "BeginInputAttribute", "name" : "BeginInputAttribute",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Create an input attribute block. The pin is rendered on left side."
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "id", "name" : "id",
"qualType" : "int", "qualType" : "int",
@@ -859,6 +903,15 @@
"qualType" : "ImNodesPinShape", "qualType" : "ImNodesPinShape",
"desugaredQualType" : "int", "desugaredQualType" : "int",
"defaultValue" : "ImNodesPinShape_CircleFilled" "defaultValue" : "ImNodesPinShape_CircleFilled"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Create an input attribute block. The pin is rendered on left side."
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -869,15 +922,6 @@
"name" : "BeginOutputAttribute", "name" : "BeginOutputAttribute",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Create an output attribute block. The pin is rendered on the right side."
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "id", "name" : "id",
"qualType" : "int", "qualType" : "int",
@@ -888,6 +932,15 @@
"qualType" : "ImNodesPinShape", "qualType" : "ImNodesPinShape",
"desugaredQualType" : "int", "desugaredQualType" : "int",
"defaultValue" : "ImNodesPinShape_CircleFilled" "defaultValue" : "ImNodesPinShape_CircleFilled"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Create an output attribute block. The pin is rendered on the right side."
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -898,6 +951,11 @@
"name" : "BeginStaticAttribute", "name" : "BeginStaticAttribute",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "id",
"qualType" : "int",
"desugaredQualType" : "int"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -912,11 +970,6 @@
"text" : " attribute activity." "text" : " attribute activity."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "id",
"qualType" : "int",
"desugaredQualType" : "int"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -927,6 +980,11 @@
"name" : "PushAttributeFlag", "name" : "PushAttributeFlag",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "flag",
"qualType" : "ImNodesAttributeFlags",
"desugaredQualType" : "int"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -935,11 +993,6 @@
"text" : " Push a single AttributeFlags value. By default, only AttributeFlags_None is set." "text" : " Push a single AttributeFlags value. By default, only AttributeFlags_None is set."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "flag",
"qualType" : "ImNodesAttributeFlags",
"desugaredQualType" : "int"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -950,21 +1003,6 @@
"name" : "Link", "name" : "Link",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Render a link between attributes."
}, {
"@type" : "AstTextComment",
"text" : " The attributes ids used here must match the ids used in Begin(Input|Output)Attribute function"
}, {
"@type" : "AstTextComment",
"text" : " calls. The order of start_attr and end_attr doesn't make a difference for rendering the link."
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "id", "name" : "id",
"qualType" : "int", "qualType" : "int",
@@ -979,21 +1017,27 @@
"name" : "end_attribute_id", "name" : "end_attribute_id",
"qualType" : "int", "qualType" : "int",
"desugaredQualType" : "int" "desugaredQualType" : "int"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Render a link between attributes."
}, {
"@type" : "AstTextComment",
"text" : " The attributes ids used here must match the ids used in Begin(Input|Output)Attribute function"
}, {
"@type" : "AstTextComment",
"text" : " calls. The order of start_attr and end_attr doesn't make a difference for rendering the link."
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "SetNodeDraggable", "name" : "SetNodeDraggable",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Enable or disable the ability to click and drag a specific node."
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "node_id", "name" : "node_id",
"qualType" : "int", "qualType" : "int",
@@ -1003,21 +1047,21 @@
"name" : "draggable", "name" : "draggable",
"qualType" : "const bool", "qualType" : "const bool",
"desugaredQualType" : "const bool" "desugaredQualType" : "const bool"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Enable or disable the ability to click and drag a specific node."
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "SetNodeScreenSpacePos", "name" : "SetNodeScreenSpacePos",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Use the following functions to get and set the node's coordinates in these coordinate systems."
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "node_id", "name" : "node_id",
"qualType" : "int", "qualType" : "int",
@@ -1027,6 +1071,15 @@
"name" : "screen_space_pos", "name" : "screen_space_pos",
"qualType" : "const ImVec2 &", "qualType" : "const ImVec2 &",
"desugaredQualType" : "const ImVec2 &" "desugaredQualType" : "const ImVec2 &"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Use the following functions to get and set the node's coordinates in these coordinate systems."
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -1110,6 +1163,11 @@
"name" : "IsNodeHovered", "name" : "IsNodeHovered",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "node_id",
"qualType" : "int *",
"desugaredQualType" : "int *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1124,11 +1182,6 @@
"text" : " after EndNodeEditor() has been called." "text" : " after EndNodeEditor() has been called."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "node_id",
"qualType" : "int *",
"desugaredQualType" : "int *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -1176,6 +1229,11 @@
"name" : "GetSelectedNodes", "name" : "GetSelectedNodes",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "node_ids",
"qualType" : "int *",
"desugaredQualType" : "int *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1190,11 +1248,6 @@
"text" : " returned." "text" : " returned."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "node_ids",
"qualType" : "int *",
"desugaredQualType" : "int *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -1229,6 +1282,11 @@
"name" : "SelectNode", "name" : "SelectNode",
"resultType" : "void", "resultType" : "void",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "node_id",
"qualType" : "int",
"desugaredQualType" : "int"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1252,11 +1310,6 @@
"text" : " known." "text" : " known."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "node_id",
"qualType" : "int",
"desugaredQualType" : "int"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -1330,6 +1383,12 @@
"name" : "IsAnyAttributeActive", "name" : "IsAnyAttributeActive",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "attribute_id",
"qualType" : "int *",
"desugaredQualType" : "int *",
"defaultValue" : "NULL"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1338,18 +1397,17 @@
"text" : " Was any attribute active? If so, sets the active attribute id to the output function argument." "text" : " Was any attribute active? If so, sets the active attribute id to the output function argument."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "attribute_id",
"qualType" : "int *",
"desugaredQualType" : "int *",
"defaultValue" : "NULL"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "IsLinkStarted", "name" : "IsLinkStarted",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "started_at_attribute_id",
"qualType" : "int *",
"desugaredQualType" : "int *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1358,17 +1416,24 @@
"text" : " Did the user start dragging a new link from a pin?" "text" : " Did the user start dragging a new link from a pin?"
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "started_at_attribute_id",
"qualType" : "int *",
"desugaredQualType" : "int *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "IsLinkDropped", "name" : "IsLinkDropped",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "started_at_attribute_id",
"qualType" : "int *",
"desugaredQualType" : "int *",
"defaultValue" : "NULL"
}, {
"@type" : "AstParmVarDecl",
"name" : "including_detached_links",
"qualType" : "bool",
"desugaredQualType" : "bool",
"defaultValue" : "true"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1392,33 +1457,12 @@
"text" : " detaches a link and drops it." "text" : " detaches a link and drops it."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "started_at_attribute_id",
"qualType" : "int *",
"desugaredQualType" : "int *",
"defaultValue" : "NULL"
}, {
"@type" : "AstParmVarDecl",
"name" : "including_detached_links",
"qualType" : "bool",
"desugaredQualType" : "bool",
"defaultValue" : "true"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "IsLinkCreated", "name" : "IsLinkCreated",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Did the user finish creating a new link?"
} ]
} ]
}, {
"@type" : "AstParmVarDecl", "@type" : "AstParmVarDecl",
"name" : "started_at_attribute_id", "name" : "started_at_attribute_id",
"qualType" : "int *", "qualType" : "int *",
@@ -1434,6 +1478,15 @@
"qualType" : "bool *", "qualType" : "bool *",
"desugaredQualType" : "bool *", "desugaredQualType" : "bool *",
"defaultValue" : "NULL" "defaultValue" : "NULL"
}, {
"@type" : "AstFullComment",
"decls" : [ {
"@type" : "AstParagraphComment",
"decls" : [ {
"@type" : "AstTextComment",
"text" : " Did the user finish creating a new link?"
} ]
} ]
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
@@ -1471,6 +1524,11 @@
"name" : "IsLinkDestroyed", "name" : "IsLinkDestroyed",
"resultType" : "bool", "resultType" : "bool",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "link_id",
"qualType" : "int *",
"desugaredQualType" : "int *"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1482,17 +1540,18 @@
"text" : " output argument link_id." "text" : " output argument link_id."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "link_id",
"qualType" : "int *",
"desugaredQualType" : "int *"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
"name" : "SaveCurrentEditorStateToIniString", "name" : "SaveCurrentEditorStateToIniString",
"resultType" : "const char *", "resultType" : "const char *",
"decls" : [ { "decls" : [ {
"@type" : "AstParmVarDecl",
"name" : "data_size",
"qualType" : "size_t *",
"desugaredQualType" : "size_t *",
"defaultValue" : "NULL"
}, {
"@type" : "AstFullComment", "@type" : "AstFullComment",
"decls" : [ { "decls" : [ {
"@type" : "AstParagraphComment", "@type" : "AstParagraphComment",
@@ -1504,12 +1563,6 @@
"text" : " file. The editor context is serialized in the INI file format." "text" : " file. The editor context is serialized in the INI file format."
} ] } ]
} ] } ]
}, {
"@type" : "AstParmVarDecl",
"name" : "data_size",
"qualType" : "size_t *",
"desugaredQualType" : "size_t *",
"defaultValue" : "NULL"
} ] } ]
}, { }, {
"@type" : "AstFunctionDecl", "@type" : "AstFunctionDecl",
File diff suppressed because it is too large. Load diff
@@ -158,19 +158,25 @@ public final class ImGuiDockNodeFlags {
*/ */
public static final int SharedFlagsInheritMask_ = -1; public static final int SharedFlagsInheritMask_ = -1;
public static final int NoResizeFlagsMask_ = 15; /**
* Definition: {@code ImGuiDockNodeFlags_NoResize | ImGuiDockNodeFlags_NoResizeX | ImGuiDockNodeFlags_NoResizeY}
*/
public static final int NoResizeFlagsMask_ = 12582944;
public static final int LocalFlagsMask_ = 16; /**
* Definition: {@code ImGuiDockNodeFlags_NoSplit | ImGuiDockNodeFlags_NoResizeFlagsMask_ | ImGuiDockNodeFlags_AutoHideTabBar | ImGuiDockNodeFlags_DockSpace | ImGuiDockNodeFlags_CentralNode | ImGuiDockNodeFlags_NoTabBar | ImGuiDockNodeFlags_HiddenTabBar | ImGuiDockNodeFlags_NoWindowMenuButton | ImGuiDockNodeFlags_NoCloseButton | ImGuiDockNodeFlags_NoDocking}
*/
public static final int LocalFlagsMask_ = 12713072;
/** /**
* When splitting those flags are moved to the inheriting child, never duplicated * When splitting those flags are moved to the inheriting child, never duplicated
* *
* <p>Definition: {@code ImGuiDockNodeFlags_LocalFlagsMask_ {@code &} ~ImGuiDockNodeFlags_DockSpace} * <p>Definition: {@code ImGuiDockNodeFlags_LocalFlagsMask_ {@code &} ~ImGuiDockNodeFlags_DockSpace}
*/ */
public static final int LocalFlagsTransferMask_ = 1; public static final int LocalFlagsTransferMask_ = 12712048;
/** /**
* Definition: {@code ImGuiDockNodeFlags_NoResizeFlagsMask_ | ImGuiDockNodeFlags_DockSpace | ImGuiDockNodeFlags_CentralNode | ImGuiDockNodeFlags_NoTabBar | ImGuiDockNodeFlags_HiddenTabBar | ImGuiDockNodeFlags_NoWindowMenuButton | ImGuiDockNodeFlags_NoCloseButton | ImGuiDockNodeFlags_NoDocking} * Definition: {@code ImGuiDockNodeFlags_NoResizeFlagsMask_ | ImGuiDockNodeFlags_DockSpace | ImGuiDockNodeFlags_CentralNode | ImGuiDockNodeFlags_NoTabBar | ImGuiDockNodeFlags_HiddenTabBar | ImGuiDockNodeFlags_NoWindowMenuButton | ImGuiDockNodeFlags_NoCloseButton | ImGuiDockNodeFlags_NoDocking}
*/ */
public static final int SavedFlagsMask_ = 130048; public static final int SavedFlagsMask_ = 12712992;
} }