rawVal ? ($T1*)((char*)this + rawVal) : ($T1*)0 BCPtr nullptr BCPtr {*($T1*)((char*)this + rawVal)} rawVal ? ($T1*)((char*)this + rawVal) : ($T1*)0 decl ? ($T1*)(decl) : ($T1*)0 DeclRef nullptr {(*(*(Slang::DeclRefBase*)this).decl).nameAndLoc} decl ? ($T1*)(decl) : ($T1*)0 "=========================" substitutions.substitutions.pointer outer.pointer this decl DeclRefBase nullptr {(*(*(Slang::DeclRefBase*)this).decl).nameAndLoc} decl "=========================" substitutions.genericSubstitutions.pointer outer.pointer this substitutions.globalGenParamSubstitutions.pointer outer.pointer this substitutions.thisTypeSubstitution GenSubst {(*genericDecl).nameAndLoc} genericDecl args DeclRefType {declRef} declRef FuncDecl {nameAndLoc} {{name={(char*)(text.m_buffer.pointer+1), s}}} {{name={(char*)((*name).text.m_buffer.pointer+1), s} loc={loc.raw}}} requirementKey satisfyingVal {{{m_op} #{_debugUID}}} m_op _debugUID typeUse.usedValue ((Slang::IRStringLit*)(((Slang::IRUse*)(child + 1))->usedValue))->value.stringVal.chars,[((Slang::IRStringLit*)(((Slang::IRUse*)(child + 1))->usedValue))->value.stringVal.numChars]s8 ((Slang::IRStringLit*)(((Slang::IRUse*)(child + 1))->usedValue))->value.stringVal.chars,[((Slang::IRStringLit*)(((Slang::IRUse*)(child + 1))->usedValue))->value.stringVal.numChars]s8 ((Slang::IRStringLit*)(((Slang::IRUse*)(child + 1))->usedValue))->value.stringVal.chars,[((Slang::IRStringLit*)(((Slang::IRUse*)(child + 1))->usedValue))->value.stringVal.numChars]s8 child = child->next ((IRStringLit*)this)->value.stringVal.chars,[((IRStringLit*)this)->value.stringVal.numChars]s8 ((IRIntLit*)this)->value.intVal pOperandInst = ((IRUse*)(&(typeUse) + 1 + index))->usedValue pOperandInst child = pOperandInst->m_decorationsAndChildren.first nameDecoration = 0 nameDecoration = child nameDecoration = child nameDecoration = child child = child->next *pOperandInst *pOperandInst index = index + 1 child = pItem->m_decorationsAndChildren.first nameDecoration = 0 nameDecoration = child nameDecoration = child nameDecoration = child child = child->next *pItem *pItem pItem = pItem->next index = index + 1 parent firstUse nextUse user {{IRUse {usedValue}}} usedValue