diff options
Diffstat (limited to 'src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ISortableNode.cs')
-rw-r--r-- | src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ISortableNode.cs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ISortableNode.cs b/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ISortableNode.cs new file mode 100644 index 000000000..ac62439b0 --- /dev/null +++ b/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ISortableNode.cs @@ -0,0 +1,23 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +namespace ILCompiler.DependencyAnalysis +{ + public interface ISortableNode + { +#if !SUPPORT_JIT + /// <summary> + /// Gets an identifier that is the same for all instances of this <see cref="ObjectNode"/> + /// descendant, but different from the <see cref="ClassCode"/> of any other descendant. + /// </summary> + /// <remarks> + /// This is really just a number, ideally produced by "new Random().Next(int.MinValue, int.MaxValue)". + /// If two manage to conflict (which is pretty unlikely), just make a new one... + /// </remarks> + int ClassCode { get; } + + int CompareToImpl(ISortableNode other, CompilerComparer comparer); +#endif + } +} |