Skip to content

Commit

Permalink
General cleanup and very minor changes in advance of release.
Browse files Browse the repository at this point in the history
  • Loading branch information
homothetyhk committed Jan 8, 2022
1 parent 410fbed commit d40898d
Show file tree
Hide file tree
Showing 64 changed files with 199 additions and 557 deletions.
8 changes: 1 addition & 7 deletions RandomizerCore/CharmNotchCosts.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RandomizerCore
namespace RandomizerCore
{
public static class CharmNotchCosts
{
Expand Down
7 changes: 1 addition & 6 deletions RandomizerCore/Collections/HashQueue.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
using RandomizerCore.Extensions;

namespace RandomizerCore.Logic
Expand Down
7 changes: 1 addition & 6 deletions RandomizerCore/Collections/PriorityQueue.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.CompilerServices;
using System.Runtime.CompilerServices;

namespace RandomizerCore.Collections
{
Expand Down
8 changes: 3 additions & 5 deletions RandomizerCore/Collections/SortedArrayList.cs
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
using RandomizerCore.Extensions;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RandomizerCore.Collections
{
/// <summary>
/// A sorted list which maintains its sort through binary search during list operations.
/// </summary>
public class SortedArrayList<T> : IReadOnlyList<T>, ICollection<T> where T : IComparable<T>
{
private readonly List<T> ts;
Expand Down
4 changes: 1 addition & 3 deletions RandomizerCore/Exceptions/OutOfLocationsException.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
using System;

namespace RandomizerCore.Exceptions
namespace RandomizerCore.Exceptions
{
public class OutOfLocationsException : Exception
{
Expand Down
8 changes: 1 addition & 7 deletions RandomizerCore/Exceptions/ValidationException.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RandomizerCore.Exceptions
namespace RandomizerCore.Exceptions
{
public class ValidationException : Exception
{
Expand Down
8 changes: 1 addition & 7 deletions RandomizerCore/Extensions/CollectionExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RandomizerCore.Extensions
namespace RandomizerCore.Extensions
{
public static class CollectionExtensions
{
Expand Down
7 changes: 1 addition & 6 deletions RandomizerCore/Extensions/RandomExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace RandomizerCore.Extensions
namespace RandomizerCore.Extensions
{
public static class RandomExtensions
{
Expand Down
5 changes: 1 addition & 4 deletions RandomizerCore/Extensions/StringExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text;

namespace RandomizerCore.Extensions
{
Expand Down
6 changes: 1 addition & 5 deletions RandomizerCore/GeneralizedPlacement.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RandomizerCore.Logic;
using RandomizerCore.Logic;

namespace RandomizerCore
{
Expand Down
50 changes: 0 additions & 50 deletions RandomizerCore/IPriorityModifier.cs

This file was deleted.

6 changes: 1 addition & 5 deletions RandomizerCore/Json/JsonUtil.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Reflection;
using System.Reflection;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using RandomizerCore.Logic;
using static RandomizerCore.LogHelper;

namespace RandomizerCore.Json
{
Expand Down
64 changes: 64 additions & 0 deletions RandomizerCore/Json/LMConverter.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using RandomizerCore.Logic;
using RandomizerCore.StringLogic;

namespace RandomizerCore.Json
{
public class LMConverter : JsonConverter<LogicManager>
{
public override LogicManager ReadJson(JsonReader reader, Type objectType, LogicManager existingValue, bool hasExistingValue, JsonSerializer serializer)
{
LogicManagerBuilder lmb = new();
JObject lm = JObject.Load(reader);
lmb.LP = lm[nameof(LogicManager.LP)].ToObject<LogicProcessor>();
lmb.VariableResolver = lm[nameof(LogicManager.VariableResolver)].ToObject<VariableResolver>();

lmb.DeserializeJson(LogicManagerBuilder.JsonType.Terms, lm["Terms"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Waypoints, lm["Waypoints"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Transitions, lm["Transitions"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Locations, lm["Logic"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Items, lm["Items"]);

return new(lmb);
}

public override void WriteJson(JsonWriter writer, LogicManager value, JsonSerializer serializer)
{
writer.WriteStartObject();

TermConverter tc = new() { LM = value };
LogicDefConverter ldc = new() { LM = value };
serializer.Converters.Add(tc);
serializer.Converters.Add(ldc);

writer.WritePropertyName("Terms");
serializer.Serialize(writer, value.Terms);

writer.WritePropertyName("Variables");
serializer.Serialize(writer, value.Variables);

writer.WritePropertyName("Logic");
serializer.Serialize(writer, value.LogicLookup.Values.Select(l => new RawLogicDef(l.Name, l.ToInfix())));

writer.WritePropertyName("Items");
serializer.Serialize(writer, value.ItemLookup.Values);

writer.WritePropertyName("Transitions");
serializer.Serialize(writer, value.TransitionLookup.Values.Select(t => t.ToRaw()));

writer.WritePropertyName("Waypoints");
serializer.Serialize(writer, value.Waypoints.Select(w => new RawLogicDef(w.Name, w.logic.ToInfix())));

writer.WritePropertyName(nameof(value.LP));
serializer.Serialize(writer, value.LP);

writer.WritePropertyName(nameof(value.VariableResolver));
serializer.Serialize(writer, value.VariableResolver);

writer.WriteEndObject();
serializer.Converters.Remove(ldc);
serializer.Converters.Remove(tc);
}
}
}
7 changes: 1 addition & 6 deletions RandomizerCore/Json/LogicDefConverter.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using Newtonsoft.Json;
using RandomizerCore.Logic;

namespace RandomizerCore.Json
Expand Down
7 changes: 1 addition & 6 deletions RandomizerCore/Json/TermConverter.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using Newtonsoft.Json;
using RandomizerCore.Logic;

namespace RandomizerCore.Json
Expand Down
3 changes: 1 addition & 2 deletions RandomizerCore/LogHelper.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System;
using System.Diagnostics;
using System.Diagnostics;

namespace RandomizerCore
{
Expand Down
4 changes: 1 addition & 3 deletions RandomizerCore/Logic/ILogicDef.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
using System.Collections.Generic;

namespace RandomizerCore.Logic
namespace RandomizerCore.Logic
{
public interface ILogicDef
{
Expand Down
9 changes: 0 additions & 9 deletions RandomizerCore/Logic/ILogicProcessor.cs

This file was deleted.

7 changes: 1 addition & 6 deletions RandomizerCore/Logic/LogicCost.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace RandomizerCore.Logic
namespace RandomizerCore.Logic
{
public abstract class LogicCost
{
Expand Down
10 changes: 1 addition & 9 deletions RandomizerCore/Logic/LogicInt.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using static RandomizerCore.LogHelper;

namespace RandomizerCore.Logic
namespace RandomizerCore.Logic
{
public abstract class LogicInt
{
Expand Down
66 changes: 2 additions & 64 deletions RandomizerCore/Logic/LogicManager.cs
Original file line number Diff line number Diff line change
@@ -1,72 +1,10 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json;
using RandomizerCore.Json;
using RandomizerCore.StringLogic;
using static RandomizerCore.LogHelper;
using System.Collections.ObjectModel;

namespace RandomizerCore.Logic
{
public class LMConverter : JsonConverter<LogicManager>
{
public override LogicManager ReadJson(JsonReader reader, Type objectType, LogicManager existingValue, bool hasExistingValue, JsonSerializer serializer)
{
LogicManagerBuilder lmb = new();
JObject lm = JObject.Load(reader);
lmb.LP = lm[nameof(LogicManager.LP)].ToObject<LogicProcessor>();
lmb.VariableResolver = lm[nameof(LogicManager.VariableResolver)].ToObject<VariableResolver>();

lmb.DeserializeJson(LogicManagerBuilder.JsonType.Terms, lm["Terms"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Waypoints, lm["Waypoints"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Transitions, lm["Transitions"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Locations, lm["Logic"]);
lmb.DeserializeJson(LogicManagerBuilder.JsonType.Items, lm["Items"]);

return new(lmb);
}

public override void WriteJson(JsonWriter writer, LogicManager value, JsonSerializer serializer)
{
writer.WriteStartObject();

TermConverter tc = new() { LM = value };
LogicDefConverter ldc = new() { LM = value };
serializer.Converters.Add(tc);
serializer.Converters.Add(ldc);

writer.WritePropertyName("Terms");
serializer.Serialize(writer, value.Terms);

writer.WritePropertyName("Variables");
serializer.Serialize(writer, value.Variables);

writer.WritePropertyName("Logic");
serializer.Serialize(writer, value.LogicLookup.Values.Select(l => new RawLogicDef(l.Name, l.ToInfix())));

writer.WritePropertyName("Items");
serializer.Serialize(writer, value.ItemLookup.Values);

writer.WritePropertyName("Transitions");
serializer.Serialize(writer, value.TransitionLookup.Values.Select(t => t.ToRaw()));

writer.WritePropertyName("Waypoints");
serializer.Serialize(writer, value.Waypoints.Select(w => new RawLogicDef(w.Name, w.logic.ToInfix())));

writer.WritePropertyName(nameof(value.LP));
serializer.Serialize(writer, value.LP);

writer.WritePropertyName(nameof(value.VariableResolver));
serializer.Serialize(writer, value.VariableResolver);

writer.WriteEndObject();
serializer.Converters.Remove(ldc);
serializer.Converters.Remove(tc);
}
}

[JsonConverter(typeof(LMConverter))]
public class LogicManager : ILogicManager
{
Expand Down
Loading

0 comments on commit d40898d

Please sign in to comment.