daily update on 20250220 by nitload youmu, building AST generator, correct type naming

This commit is contained in:
Nitload
2025-02-21 08:11:26 +08:00
parent ccef0de6f6
commit 83bde12d22
98 changed files with 4182 additions and 1855 deletions
@@ -68,7 +68,7 @@ namespace StgSharp.Script.Express
throw new NotImplementedException();
}
public override ExpToken MakeReference( params object[] options )
public override ExpBaseNode MakeReference( params object[] options )
{
if( options.Length == 0 || options[ 0 ] is not string str ) {
return null!;
@@ -34,21 +34,15 @@ using System.Text;
namespace StgSharp.Script.Express
{
public class ExpEntity : ExpToken
public class ExpEntity : ExpBaseNode
{
public ExpEntity( string name, ExpSchema context )
: base( name, context ) { }
public override ExpToken Left => throw new NotImplementedException();
public override ExpBaseNode Left => throw new NotImplementedException();
public override ExpToken Right => throw new NotImplementedException();
public override ExpToken Next
{
get => throw new NotImplementedException();
set => throw new NotImplementedException();
}
public override ExpBaseNode Right => throw new NotImplementedException();
public override IExpElementSource EqualityTypeConvert => throw new NotImplementedException(
);
@@ -79,7 +73,7 @@ namespace StgSharp.Script.Express
throw new NotImplementedException();
}
public override ExpToken CreateInstanceToken()
public override ExpBaseNode CreateInstanceToken()
{
throw new NotImplementedException();
}
@@ -34,33 +34,27 @@ using System.Text;
namespace StgSharp.Script.Express
{
public class ExpFunction : ExpToken
public class ExpFunction : ExpBaseNode
{
private ExpFunctionSource _source;
private readonly ExpToken _return;
private readonly List<KeyValuePair<string, ExpToken>> _parameterList
= new List<KeyValuePair<string, ExpToken>>();
private readonly ExpBaseNode _return;
private readonly List<KeyValuePair<string, ExpBaseNode>> _parameterList
= new List<KeyValuePair<string, ExpBaseNode>>();
public ExpFunction( string name, ExpSchema context )
: base( name, context ) { }
public ExpElementType ElementType => ExpElementType.Function;
public override ExpToken Left => throw new NotImplementedException();
public override ExpBaseNode Left => throw new NotImplementedException();
public override ExpToken Next
{
get => throw new NotImplementedException();
set => throw new NotImplementedException();
}
public override ExpToken Right => throw new NotImplementedException();
public override ExpBaseNode Right => throw new NotImplementedException();
public override IExpElementSource EqualityTypeConvert => throw new NotImplementedException(
);
public void CallThisFunction( params ExpToken[] parameters ) { }
public void CallThisFunction( params ExpBaseNode[] parameters ) { }
}
@@ -89,7 +83,7 @@ namespace StgSharp.Script.Express
throw new NotImplementedException();
}
public override ExpToken MakeReference( params object[] options )
public override ExpBaseNode MakeReference( params object[] options )
{
throw new NotImplementedException();
}
@@ -46,15 +46,9 @@ namespace StgSharp.Script.Express
public object? value => throw new NotImplementedException();
public override ExpToken Left => throw new NotImplementedException();
public override ExpBaseNode Left => throw new NotImplementedException();
public override ExpToken Next
{
get => null!;
set { }
}
public override ExpToken Right => throw new NotImplementedException();
public override ExpBaseNode Right => throw new NotImplementedException();
public override IExpElementSource EqualityTypeConvert => throw new NotImplementedException(
);
@@ -86,7 +80,7 @@ namespace StgSharp.Script.Express
throw new NotImplementedException();
}
public override ExpToken MakeReference( params object[] options )
public override ExpBaseNode MakeReference( params object[] options )
{
throw new NotImplementedException();
}
@@ -41,15 +41,9 @@ namespace StgSharp.Script.Express
public ExpType( string name, ExpSchema context )
: base( name, context ) { }
public override ExpToken Left => throw new NotImplementedException();
public override ExpBaseNode Left => throw new NotImplementedException();
public override ExpToken Next
{
get => throw new NotImplementedException();
set => throw new NotImplementedException();
}
public override ExpToken Right => throw new NotImplementedException();
public override ExpBaseNode Right => throw new NotImplementedException();
public override IExpElementSource EqualityTypeConvert => throw new NotImplementedException(
);