From 961c0e5b5b9deec277a42ffff4ee71dbaf2be81c Mon Sep 17 00:00:00 2001 From: Manuel de la Pena Date: Mon, 6 Feb 2023 18:01:29 -0500 Subject: [PATCH] [Generator] Move GeneratedTypes out and enable nullability. (#17435) Moved the code out, also made a small improvement by reducing the number of lookups are needed to get the GeneratedType. --- src/bgen/GeneratedTypes.cs | 24 ++++++++++++++++++++++++ src/bgen/Generator.cs | 20 -------------------- src/generator.csproj | 1 + 3 files changed, 25 insertions(+), 20 deletions(-) create mode 100644 src/bgen/GeneratedTypes.cs diff --git a/src/bgen/GeneratedTypes.cs b/src/bgen/GeneratedTypes.cs new file mode 100644 index 0000000000..21558138dd --- /dev/null +++ b/src/bgen/GeneratedTypes.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; + +#nullable enable + +public class GeneratedTypes { + public Generator Generator; + + readonly Dictionary knownTypes = new (); + + public GeneratedTypes (Generator generator) + { + this.Generator = generator; + } + + public GeneratedType Lookup (Type t) + { + if (knownTypes.TryGetValue (t, out var n)) + return n; + n = new (t, this); + knownTypes [t] = n; + return n; + } +} diff --git a/src/bgen/Generator.cs b/src/bgen/Generator.cs index 1dc73ccddf..cd4cd75f48 100644 --- a/src/bgen/Generator.cs +++ b/src/bgen/Generator.cs @@ -54,26 +54,6 @@ using ObjCRuntime; using Foundation; using Xamarin.Utils; -public class GeneratedTypes { - public Generator Generator; - - Dictionary knownTypes = new Dictionary (); - - public GeneratedTypes (Generator generator) - { - this.Generator = generator; - } - - public GeneratedType Lookup (Type t) - { - if (knownTypes.ContainsKey (t)) - return knownTypes [t]; - var n = new GeneratedType (t, this); - knownTypes [t] = n; - return n; - } -} - public interface IMemberGatherer { IEnumerable GetTypeContractMethods (Type source); } diff --git a/src/generator.csproj b/src/generator.csproj index c70cf85fb2..7151fe06ed 100644 --- a/src/generator.csproj +++ b/src/generator.csproj @@ -101,6 +101,7 @@ +