diff options
| -rw-r--r-- | include/slang.h | 1 | ||||
| -rw-r--r-- | source/slang/slang-reflection-json.cpp | 32 |
2 files changed, 32 insertions, 1 deletions
diff --git a/include/slang.h b/include/slang.h index 97ed08bed..516af9603 100644 --- a/include/slang.h +++ b/include/slang.h @@ -2246,6 +2246,7 @@ struct TypeReflection Feedback = SLANG_TYPE_KIND_FEEDBACK, Pointer = SLANG_TYPE_KIND_POINTER, DynamicResource = SLANG_TYPE_KIND_DYNAMIC_RESOURCE, + MeshOutput = SLANG_TYPE_KIND_MESH_OUTPUT, }; enum ScalarType : SlangScalarTypeIntegral diff --git a/source/slang/slang-reflection-json.cpp b/source/slang/slang-reflection-json.cpp index ee11b061a..c253c4d66 100644 --- a/source/slang/slang-reflection-json.cpp +++ b/source/slang/slang-reflection-json.cpp @@ -161,6 +161,12 @@ static void emitReflectionVarBindingInfoJSON( case SLANG_STAGE_COMPUTE: stageName = "compute"; break; + case SLANG_STAGE_MESH: + stageName = "mesh"; + break; + case SLANG_STAGE_AMPLIFICATION: + stageName = "amplification"; + break; default: break; @@ -710,8 +716,26 @@ static void emitReflectionTypeInfoJSON(PrettyWriter& writer, slang::TypeReflecti writer.maybeComma(); writer << "\"kind\": \"DynamicResource\""; break; + case slang::TypeReflection::Kind::OutputStream: + writer.maybeComma(); + writer << "\"kind\": \"OutputStream\""; + break; + case slang::TypeReflection::Kind::MeshOutput: + writer.maybeComma(); + writer << "\"kind\": \"MeshOutput\""; + break; + case slang::TypeReflection::Kind::Specialized: + writer.maybeComma(); + writer << "\"kind\": \"Specialized\""; + break; + case slang::TypeReflection::Kind::None: + writer.maybeComma(); + writer << "\"kind\": \"None\""; + break; default: - assert(!"unhandled case"); + SLANG_ASSERT(!"Unhandled type kind"); + writer.maybeComma(); + writer << "\"kind\": \"Unknown\""; break; } emitUserAttributes(writer, type); @@ -1105,6 +1129,12 @@ static void emitReflectionEntryPointJSON( case SLANG_STAGE_COMPUTE: writer << ",\n\"stage\": \"compute\""; break; + case SLANG_STAGE_MESH: + writer << ",\n\"stage\": \"mesh\""; + break; + case SLANG_STAGE_AMPLIFICATION: + writer << ",\n\"stage\": \"amplification\""; + break; default: break; } |
