[all-commits] [llvm/llvm-project] 77740f: [clang][ssaf] Add SerializationFormatRegistry [1/2...

Balázs Benics via All-commits all-commits at lists.llvm.org
Thu Feb 5 08:35:17 PST 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 77740f55771339e5c5e5e266ff85d716b47717de
      https://github.com/llvm/llvm-project/commit/77740f55771339e5c5e5e266ff85d716b47717de
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-05 (Thu, 05 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    A clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    M clang/lib/Analysis/Scalable/Serialization/SerializationFormat.cpp
    A clang/lib/Analysis/Scalable/Serialization/SerializationFormatRegistry.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    A clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
    A clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Add SerializationFormatRegistry [1/2] (#179516)

Add a registry infrastructure for SerializationFormat implementations,
enabling registration and instantiation of different serialization
formats.

For example:
```c++
  static SerializationFormatRegistry::Add<MyFormat>
    RegisterFormat("MyFormat", "Description");
```

Formats can then be instantiated by name using `makeFormat()`.

The patch also updates the SerializationFormat base class to accept
FileSystem for virtualising reading inputs eg. by using file overlays in
the future.

Assisted-by: claude
rdar://169192127



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list