Skip to content

Commit

Permalink
Refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
keyboardDrummer committed Jun 10, 2024
1 parent d3bea54 commit 8cb74e2
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 12 deletions.
10 changes: 3 additions & 7 deletions Source/DafnyCore/DooFile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -168,22 +168,18 @@ public class ManifestData {
return null;
}

return CheckAndGetLibraryOptions(reporter, file, options, origin, Manifest.Options,
ImmutableDictionary<Option, OptionCompatibility.OptionCheck>.Empty);
return CheckAndGetLibraryOptions(reporter, file, options, origin, Manifest.Options);
}

public static DafnyOptions? CheckAndGetLibraryOptions(ErrorReporter reporter,
Uri libraryFile,
DafnyOptions options, IToken origin,
IDictionary<string, object> libraryOptions,
ImmutableDictionary<Option, OptionCompatibility.OptionCheck> additionalOptions) {
IDictionary<string, object> libraryOptions) {
var result = new DafnyOptions(options);
var success = true;
var totalOptions = additionalOptions.Merge(OptionChecks,
(_, _) => throw new InvalidOperationException());

var relevantOptions = options.Options.OptionArguments.Keys.ToHashSet();
foreach (var (option, check) in totalOptions) {
foreach (var (option, check) in OptionChecks) {
// It's important to only look at the options the current command uses,
// because other options won't be initialized to the correct default value.
// See CommandRegistry.Create().
Expand Down
2 changes: 1 addition & 1 deletion Source/DafnyCore/Options/CommonOptionBag.cs
Original file line number Diff line number Diff line change
Expand Up @@ -579,7 +579,7 @@ public enum DefaultFunctionOpacityOptions {
DooFile.RegisterNoChecksNeeded(LogLevelOption, false);
DooFile.RegisterNoChecksNeeded(ManualTriggerOption, true);
DooFile.RegisterNoChecksNeeded(ShowHints, false);
DooFile.RegisterNoChecksNeeded(Libraries, false);
DooFile.RegisterNoChecksNeeded(Libraries, true);
DooFile.RegisterNoChecksNeeded(Output, false);
DooFile.RegisterNoChecksNeeded(PluginOption, false);
DooFile.RegisterNoChecksNeeded(Prelude, false);
Expand Down
5 changes: 1 addition & 4 deletions Source/DafnyDriver/DafnyNewCli.cs
Original file line number Diff line number Diff line change
Expand Up @@ -273,10 +273,7 @@ public static class DafnyNewCli {

var dependencyProject = await DafnyProject.Open(fileSystem, options, uri, uriOrigin);
var dependencyOptions =
DooFile.CheckAndGetLibraryOptions(reporter, uri, options, uriOrigin, dependencyProject.Options,
ImmutableDictionary<Option, OptionCompatibility.OptionCheck>.Empty.SetItem(
CommonOptionBag.Libraries, OptionCompatibility.NoOpOptionCheck)
);
DooFile.CheckAndGetLibraryOptions(reporter, uri, options, uriOrigin, dependencyProject.Options);
if (dependencyOptions == null) {
yield break;
}
Expand Down

0 comments on commit 8cb74e2

Please sign in to comment.