Programs now built using IProgram interface

- The old App abstract class has been scrapped in favor of the IProgram interface in the Tomas.Interface library.
- A new terminal emulator was created when not on Windows.
- In both OS and terminal, a single dictionary has the commands and classes that implement IProgram.
- Start() now returns a boolean that behaves similar to C's main in returning an integer.
- A new while loop in both terminal and kernel handles the execution of programs.
This commit is contained in:
Tony Bark 2021-03-30 08:26:18 -04:00
parent 952554b476
commit c11f987521
31 changed files with 387 additions and 219 deletions

View file

@ -0,0 +1,7 @@
namespace Tomas.Interface.Shell
{
public interface IProgram
{
bool Start();
}
}

View file

@ -0,0 +1,7 @@
namespace Tomas.Interface.Shell
{
public interface IShell
{
string ReadLine { get; }
}
}

View file

@ -0,0 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
</Project>