Table of Contents

Class ComdatCollection

Namespace
Ubiquity.NET.Llvm
Assembly
Ubiquity.NET.Llvm.dll

Collection of Comdats in a module

public sealed class ComdatCollection : IEnumerable<Comdat>, IEnumerable
Inheritance
ComdatCollection
Implements
Inherited Members

Remarks

This is would ideally be a 'ref struct' to ensure that ownership of the collection remains with the module itself and this is only used to iterate over the individual items. Unfortunately the support for that is not available in all runtimes and not supported fully in the ecosystem of tools yet. It is not allowed to store this as it references the owning module and ultimately the Comdat values themselves are owned in the native code layer and only "projected" to managed here.

Properties

Count

Gets a count of comdats in the associated module

this[string]

Retrieves Comdat by its name

Methods

AddOrUpdate(string, ComdatKind)

Adds or updates a Comdat entry

Clear()

Removes all the Comdat entries from the module

Contains(string)

Gets a value that indicates if a Comdat with a given name exists in the collection

Remove(string)

Removes a Comdat entry from the module

TryGetValue(string, out Comdat)

Gets a value form the collection if it exists