Skip to content

Commit 50a34e4

Browse files
authored
Consolidate the TextUx library into the commandline lib (#336)
* This goes towards #304 - Not all libs discussed in that issue are consolidated, in fact some like interophelpers should not be. * Moved `SourceRange` and `SourcePosition` types to the extensions lib. - they are not specific to the command line. * Minor doc clarifications. * Updated dependent projects for new consolidation
1 parent db8f52f commit 50a34e4

69 files changed

Lines changed: 163 additions & 304 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docfx/ReadMe.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ a project via MSBUILD. Instead it focused on a .NET tool to do it all via the
2121
command line. Ultimately the docfx.json serves as the "project" file for the
2222
different site builds. The PowerShell script `Build-Docs.ps1` was updated to use
2323
the new tool directly. Using that script should have little or no impact on the
24-
overall flow.
24+
overall flow. There is a "no-targets" project in the solution to enable easier access to the
25+
input files but does not itself, generate any docs - it's just a placeholder.
2526

2627
## Files used by the docs generation
2728
There are a lot of files used to generate the docs and the concept of a Table of

docfx/TextUX/api/index.md

Lines changed: 0 additions & 2 deletions
This file was deleted.

docfx/TextUX/index.md

Lines changed: 0 additions & 2 deletions
This file was deleted.

docfx/TextUX/toc.yml

Lines changed: 0 additions & 5 deletions
This file was deleted.

docfx/docfx.json

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -87,18 +87,6 @@
8787
// in this project let alone all the ones found on-line.)
8888
"TargetFramework": "net8.0"
8989
}
90-
},
91-
{
92-
// TextUX library
93-
"memberLayout":"separatePages",
94-
"namespaceLayout":"nested",
95-
"src": [
96-
{
97-
"src": "../src/Ubiquity.NET.TextUX",
98-
"files": ["**.csproj"]
99-
}
100-
],
101-
"dest": "TextUX/api"
10290
}
10391
],
10492
"build": {
@@ -201,18 +189,6 @@
201189
"**/namespaces/**.md",
202190
"**/*-xref.yml"
203191
]
204-
},
205-
{
206-
// TextUX project additional content, Includes the generated metadata API folder
207-
// NOTE: File paths are relative to the location of this file
208-
"files": [
209-
"TextUX/**.{md,yml}"
210-
],
211-
// Exclude the namespace overwrites and XREF maps as they are listed explicitly elsewhere
212-
"exclude": [
213-
"**/namespaces/**.md",
214-
"**/*-xref.yml"
215-
]
216192
}
217193
],
218194
"resource": [

docfx/documentation.msbuildproj

Lines changed: 25 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@
88
<Platform Condition="'$(Platform)'=='x86'">AnyCPU</Platform>
99
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
1010
</PropertyGroup>
11-
1211
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'" />
1312
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'" />
14-
1513
<!--
1614
This projects serves as a convenient placeholder to reference the doc files. It uses project relative include
1715
and exclude patterns to simplify referencing ALL files but skipping over the generated API files.
@@ -59,52 +57,48 @@
5957
<!--Everything in the TextUX sub-folders except the API folder as that contains generated files -->
6058
<None Include="TextUX/**" Exclude="TextUX/api/**" />
6159
<!-- Explicitly call out the non-generated files in the API folder-->
62-
<None Include="TextUX/api/index.md" />
6360
</ItemGroup>
6461
<ItemGroup>
6562
<!--Everything in the CommandLine sub-folders except the API folder as that contains generated files -->
6663
<None Include="CommandLine/**" Exclude="CommandLine/api/**" />
6764
<!-- Explicitly call out the non-generated files in the API folder-->
6865
<None Include="CommandLine/api/index.md" />
6966
</ItemGroup>
70-
7167
<Target Name="AlwaysRun" BeforeTargets="AfterBuild">
7268
<Message Importance="High" Text="NOTE: Building $(MSBuildProjectFile) does NOTHING, docs are built using the docfx tool. This project is simply a convenient placeholder for organizing/editing files" />
7369
</Target>
74-
7570
<!--
7671
Target to generate the versioning JSON file for consumption by the docs scripts. This target is explicitly called out
7772
by the build scripts to generate the JSON file with all the version details from Ubiquity.NET.Versioning.Build.Tasks.
7873
The `PrepareVersioningForBuild` target comes from there.
7974
-->
8075
<Target Name="GenerateVersionJson" DependsOnTargets="PrepareVersioningForBuild">
81-
<Error Condition="'$(FullBuildNumber)'==''" Text="FullBuildNumber not available!"/>
82-
<Message Importance="normal" Text=" BuildTime: $(BuildTime)"/>
83-
<Message Importance="normal" Text=" FullBuildNumber: $(FullBuildNumber)"/>
84-
<Message Importance="normal" Text=" BuildMajor: $(BuildMajor)"/>
85-
<Message Importance="normal" Text=" BuildMinor: $(BuildMinor)"/>
86-
<Message Importance="normal" Text=" BuildPatch: $(BuildPatch)"/>
87-
<Message Importance="normal" Text=" PreReleaseName: $(PreReleaseName)"/>
88-
<Message Importance="normal" Text=" PreReleaseNumber: $(PreReleaseNumber)"/>
89-
<Message Importance="normal" Text=" PreReleaseFix: $(PreReleaseFix)"/>
90-
<Message Importance="normal" Text=" BuildMeta: $(BuildMeta)"/>
91-
<Message Importance="normal" Text=" CiBuildName: $(CiBuildName)"/>
92-
<Message Importance="normal" Text=" CiBuildIndex: $(CiBuildIndex)"/>
76+
<Error Condition="'$(FullBuildNumber)'==''" Text="FullBuildNumber not available!" />
77+
<Message Importance="normal" Text=" BuildTime: $(BuildTime)" />
78+
<Message Importance="normal" Text=" FullBuildNumber: $(FullBuildNumber)" />
79+
<Message Importance="normal" Text=" BuildMajor: $(BuildMajor)" />
80+
<Message Importance="normal" Text=" BuildMinor: $(BuildMinor)" />
81+
<Message Importance="normal" Text=" BuildPatch: $(BuildPatch)" />
82+
<Message Importance="normal" Text=" PreReleaseName: $(PreReleaseName)" />
83+
<Message Importance="normal" Text=" PreReleaseNumber: $(PreReleaseNumber)" />
84+
<Message Importance="normal" Text=" PreReleaseFix: $(PreReleaseFix)" />
85+
<Message Importance="normal" Text=" BuildMeta: $(BuildMeta)" />
86+
<Message Importance="normal" Text=" CiBuildName: $(CiBuildName)" />
87+
<Message Importance="normal" Text=" CiBuildIndex: $(CiBuildIndex)" />
9388
<ItemGroup>
94-
<__Line Include="{"/>
95-
<__Line Include=" &quot;FullBuildNumber&quot; : &quot;$(FullBuildNumber)&quot;," />
96-
<__Line Include=" &quot;BuildMajor&quot; : $(BuildMajor)," />
97-
<__Line Include=" &quot;BuildMinor&quot; : $(BuildMinor)," />
98-
<__Line Include=" &quot;BuildPatch&quot; : $(BuildPatch)," />
99-
<__Line Include=" &quot;PreReleaseName&quot; : &quot;$(PreReleaseName)&quot;," />
100-
<__Line Include=" &quot;CiBuildName&quot; : &quot;$(CiBuildName)&quot;," />
101-
<__Line Include=" &quot;CiBuildIndex&quot; : $(CiBuildIndex)," />
102-
<__Line Condition="'$(PreReleaseNumber)'!=''" Include="&quot;PreReleaseNumber&quot; : $(PreReleaseNumber)," />
103-
<__Line Condition="'$(PreReleaseFix)'!=''" Include="&quot;PreReleaseFix&quot; : $(PreReleaseFix)," />
104-
<__Line Condition="'$(BuildMeta)'!=''" Include="&quot;BuildMeta&quot; : &quot;$(BuildMeta)&quot;," />
105-
<__Line Include="}"/>
89+
<__Line Include="{" />
90+
<__Line Include=" &quot;FullBuildNumber&quot; : &quot;$(FullBuildNumber)&quot;," />
91+
<__Line Include=" &quot;BuildMajor&quot; : $(BuildMajor)," />
92+
<__Line Include=" &quot;BuildMinor&quot; : $(BuildMinor)," />
93+
<__Line Include=" &quot;BuildPatch&quot; : $(BuildPatch)," />
94+
<__Line Include=" &quot;PreReleaseName&quot; : &quot;$(PreReleaseName)&quot;," />
95+
<__Line Include=" &quot;CiBuildName&quot; : &quot;$(CiBuildName)&quot;," />
96+
<__Line Include=" &quot;CiBuildIndex&quot; : $(CiBuildIndex)," />
97+
<__Line Condition="'$(PreReleaseNumber)'!=''" Include="&quot;PreReleaseNumber&quot; : $(PreReleaseNumber)," />
98+
<__Line Condition="'$(PreReleaseFix)'!=''" Include="&quot;PreReleaseFix&quot; : $(PreReleaseFix)," />
99+
<__Line Condition="'$(BuildMeta)'!=''" Include="&quot;BuildMeta&quot; : &quot;$(BuildMeta)&quot;," />
100+
<__Line Include="}" />
106101
</ItemGroup>
107-
<WriteLinesToFile File="CurrentVersionInfo.json" Lines="@(__Line)" Overwrite="true"/>
102+
<WriteLinesToFile File="CurrentVersionInfo.json" Lines="@(__Line)" Overwrite="true" />
108103
</Target>
109-
110104
</Project>

docfx/index.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Ubiquity.NET
2-
Ubiquity.NET family of libraries provides support for a number of scenarios but the primary focus is
3-
AOT code generation of .NET for Embedded systems. We aren't quite there yet, but are rather close. In
4-
the mean time this set of libraries provides the building blocks needed for creating a Domain Specific
5-
Language (DSL) implementation including JIT execution. Several useful generalized libraries are also
6-
included.
2+
Ubiquity.NET family of libraries provides support for a number of scenarios but the primary
3+
focus is AOT code generation of .NET for Embedded systems. We aren't quite there yet, but
4+
are rather close. In the mean time this set of libraries provides the building blocks needed
5+
for creating a Domain Specific Language (DSL) implementation or custom language compiler,
6+
including JIT execution. Several useful generalized libraries are also included.
77

88
## The Libraries in this repository
99
(At least the ones generating docs at this point anyway! :grin:)
@@ -14,6 +14,5 @@ included.
1414
| [Ubiquity.NET.Runtime.Utils](runtime-utils/index.md) | This library contains common support for DSL runtime and language implementors |
1515
| [Ubiquity.NET.Extensions](extensions/index.md) | This library contains general extensions and helpers for many scenarios using .NET |
1616
| [Ubiquity.NET.Antlr.Utils](antlr-utils/index.md) | This library contains extensions and helpers for using ANTLR with .NET |
17-
| [Ubiquity.NET.TextUX](TextUX/index.md) | This library contains extensions and helpers for Text User eXperience (UX) applications (console) |
1817
| [Ubiquity.NET.CommandLine](CommandLine/index.md) | This library contains extensions and helpers for command line parsing via `System.CommandLine` |
1918
| [Ubiquity.NET.InteropHelpers](interop-helpers/index.md) | This library contains extensions and helpers for implementing interop support for native libraries |

docfx/toc.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717
href: extensions/index.md
1818
- name: ANTLR Utilities
1919
href: antlr-utils/index.md
20-
- name: TextUX Utilities
21-
href: TextUX/index.md
2220
- name: Interop Helpers
2321
href: interop-helpers/index.md
2422
- name: CommandLine Parsing

src/Interop/LlvmBindingsGenerator/Program.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
using CppSharp;
88

99
using Ubiquity.NET.CommandLine;
10-
using Ubiquity.NET.TextUX;
1110

1211
namespace LlvmBindingsGenerator
1312
{

src/Samples/Kaleidoscope/Chapter8/Program.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
using Ubiquity.NET.CommandLine;
1111
using Ubiquity.NET.Llvm;
1212
using Ubiquity.NET.Runtime.Utils;
13-
using Ubiquity.NET.TextUX;
1413

1514
using static Ubiquity.NET.Llvm.Library;
1615

0 commit comments

Comments
 (0)