summaryrefslogtreecommitdiffstats
path: root/tools/Sandcastle/Source/CommandLine/SwitchOption.cs
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2009-10-31 16:27:49 -0700
committerAndrew Arnott <andrewarnott@gmail.com>2009-10-31 16:27:49 -0700
commit55d6e4be43225184f9a656e6d9cc8fc1e8e7387b (patch)
treec382ef957455af8a39f80789dff9b112e97c2fe6 /tools/Sandcastle/Source/CommandLine/SwitchOption.cs
parent07a8ecbc4fc50d11179f7e0b3fadb9f2be430ae5 (diff)
parentebf5efb48cddbfaf08aec24117b7c5f9626f1c02 (diff)
downloadDotNetOpenAuth-55d6e4be43225184f9a656e6d9cc8fc1e8e7387b.zip
DotNetOpenAuth-55d6e4be43225184f9a656e6d9cc8fc1e8e7387b.tar.gz
DotNetOpenAuth-55d6e4be43225184f9a656e6d9cc8fc1e8e7387b.tar.bz2
Merge branch 'contracts'
Diffstat (limited to 'tools/Sandcastle/Source/CommandLine/SwitchOption.cs')
-rw-r--r--tools/Sandcastle/Source/CommandLine/SwitchOption.cs31
1 files changed, 31 insertions, 0 deletions
diff --git a/tools/Sandcastle/Source/CommandLine/SwitchOption.cs b/tools/Sandcastle/Source/CommandLine/SwitchOption.cs
new file mode 100644
index 0000000..394d137
--- /dev/null
+++ b/tools/Sandcastle/Source/CommandLine/SwitchOption.cs
@@ -0,0 +1,31 @@
+// Copyright © Microsoft Corporation.
+// This source file is subject to the Microsoft Permissive License.
+// See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx.
+// All other rights reserved.
+
+using System;
+using System.IO;
+using System.Collections.Generic;
+
+namespace Microsoft.Ddue.Tools.CommandLine {
+
+ public sealed class SwitchOption : Option {
+
+ public SwitchOption(string name) : base(name) { }
+
+ public SwitchOption(string name, string description) : base(name, description) { }
+
+ internal override ParseResult ParseArgument(string argument) {
+ if (argument.Length > 0) return (ParseResult.MalformedArgument);
+ if (present) return (ParseResult.MultipleOccurance);
+ present = true;
+ return (ParseResult.Success);
+ }
+
+ internal override void WriteTemplate(TextWriter writer) {
+ writer.WriteLine("/{0}", Name);
+ }
+
+ }
+
+}