From 320bbfa7ace69c1db2761558ae8179d30d807961 Mon Sep 17 00:00:00 2001 From: Sean Kessler Date: Thu, 22 Feb 2024 15:13:49 -0500 Subject: [PATCH] Init --- .gitignore | 330 ++++ Axiom.Core/Axiom.Core.csproj | 86 + Axiom.Core/Interpreter/Assembler.cs | 1118 +++++++++++ Axiom.Core/Interpreter/AxiomException.cs | 21 + Axiom.Core/Interpreter/AxiomResult.cs | 26 + Axiom.Core/Interpreter/AxiomTrace.cs | 44 + Axiom.Core/Interpreter/CodeRunner.cs | 422 ++++ Axiom.Core/Interpreter/Emitter.cs | 204 ++ Axiom.Core/Interpreter/GenericData.cs | 713 +++++++ Axiom.Core/Interpreter/ParseSymbols.cs | 91 + Axiom.Core/Interpreter/Parser.cs | 1748 +++++++++++++++++ Axiom.Core/Interpreter/Scanner.cs | 625 ++++++ Axiom.Core/Interpreter/StackElement.cs | 31 + Axiom.Core/Interpreter/Symbol.cs | 40 + Axiom.Core/Interpreter/SymbolTable.cs | 205 ++ Axiom.Core/Utility/Utility.cs | 134 ++ Axiom.Core/app.config | 11 + Axiom.sln | 29 + AxiomConsole.sln | 30 + AxiomConsole/App.config | 6 + AxiomConsole/AxiomConsole.csproj | 66 + AxiomConsole/AxiomConsole.sln | 28 + AxiomConsole/Program.cs | 52 + AxiomConsole/Properties/AssemblyInfo.cs | 36 + AxiomUnitTestProject/AxiomUnitTestProject.sln | 28 + .../AxiomUnitTestProjectr/App.config | 11 + .../AxiomUnitTestProjectr/AssemblerTests.cs | 736 +++++++ .../AxiomUnitTestProject.csproj | 100 + .../AxiomUnitTestProjectr/ParserTests.cs | 37 + .../Properties/AssemblyInfo.cs | 36 + .../AxiomUnitTestProjectr/ScannerTests.cs | 30 + .../AxiomUnitTestProjectr/TestData.cs | 94 + Configs/PROD/Janus.AxiomConsole.exe.config | 70 + Configs/STAGE/Janus.AxiomConsole.exe.config | 70 + Notes.txt | 0 README.md | 4 + References/MarketDataLib.dll | Bin 0 -> 1136640 bytes References/MySql.Data.dll | Bin 0 -> 1187328 bytes 38 files changed, 7312 insertions(+) create mode 100644 .gitignore create mode 100644 Axiom.Core/Axiom.Core.csproj create mode 100644 Axiom.Core/Interpreter/Assembler.cs create mode 100644 Axiom.Core/Interpreter/AxiomException.cs create mode 100644 Axiom.Core/Interpreter/AxiomResult.cs create mode 100644 Axiom.Core/Interpreter/AxiomTrace.cs create mode 100644 Axiom.Core/Interpreter/CodeRunner.cs create mode 100644 Axiom.Core/Interpreter/Emitter.cs create mode 100644 Axiom.Core/Interpreter/GenericData.cs create mode 100644 Axiom.Core/Interpreter/ParseSymbols.cs create mode 100644 Axiom.Core/Interpreter/Parser.cs create mode 100644 Axiom.Core/Interpreter/Scanner.cs create mode 100644 Axiom.Core/Interpreter/StackElement.cs create mode 100644 Axiom.Core/Interpreter/Symbol.cs create mode 100644 Axiom.Core/Interpreter/SymbolTable.cs create mode 100644 Axiom.Core/Utility/Utility.cs create mode 100644 Axiom.Core/app.config create mode 100644 Axiom.sln create mode 100644 AxiomConsole.sln create mode 100644 AxiomConsole/App.config create mode 100644 AxiomConsole/AxiomConsole.csproj create mode 100644 AxiomConsole/AxiomConsole.sln create mode 100644 AxiomConsole/Program.cs create mode 100644 AxiomConsole/Properties/AssemblyInfo.cs create mode 100644 AxiomUnitTestProject/AxiomUnitTestProject.sln create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/App.config create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/AssemblerTests.cs create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/AxiomUnitTestProject.csproj create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/ParserTests.cs create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/Properties/AssemblyInfo.cs create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/ScannerTests.cs create mode 100644 AxiomUnitTestProject/AxiomUnitTestProjectr/TestData.cs create mode 100644 Configs/PROD/Janus.AxiomConsole.exe.config create mode 100644 Configs/STAGE/Janus.AxiomConsole.exe.config create mode 100644 Notes.txt create mode 100644 README.md create mode 100644 References/MarketDataLib.dll create mode 100644 References/MySql.Data.dll diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3e759b7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,330 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ +**/Properties/launchSettings.json + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush +.cr/ + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ diff --git a/Axiom.Core/Axiom.Core.csproj b/Axiom.Core/Axiom.Core.csproj new file mode 100644 index 0000000..bcd3afe --- /dev/null +++ b/Axiom.Core/Axiom.Core.csproj @@ -0,0 +1,86 @@ + + + + + Debug + AnyCPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6} + Library + Axiom.Core + Axiom.Core + v4.6.2 + 512 + {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + 4 + true + + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + ..\packages\log4net.2.0.8\lib\net45-full\log4net.dll + + + ..\References\MarketDataLib.dll + + + + + + + + + + + + 4.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Axiom.Core/Interpreter/Assembler.cs b/Axiom.Core/Interpreter/Assembler.cs new file mode 100644 index 0000000..989d9de --- /dev/null +++ b/Axiom.Core/Interpreter/Assembler.cs @@ -0,0 +1,1118 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Configuration; +using log4net; +using System.Globalization; +using Axiom.Utils; + +// FileName : Assembler.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class Assembler + { + private static ILog logger = LogManager.GetLogger(typeof(Assembler)); + private BinaryReader binaryReader; + private SymbolTable symbolTable; + private CodeStack codeStack = new CodeStack(); + private bool isInError=false; + private String lastMessage; + + public Assembler(BinaryReader binaryReader, SymbolTable symbolTable) + { + this.binaryReader=binaryReader; + this.symbolTable = symbolTable; + this.isInError=false; + } + public bool IsInError + { + get{return isInError;} + } + public String LastMessage + { + get{return lastMessage;} + } + public bool Debug {get;set;} + public void Dispose() + { + } +// ****************************************************************************************************************************************************************************************************************************** +// ****************************************************************************************************** M A I N A S S E M B L E R S T A G E S ****************************************************************************** +// ****************************************************************************************************************************************************************************************************************************** +// main code assembler + public bool Assemble() + { + + try + { + isInError=false; + Parser.ParserSymbols symbol = Parser.ParserSymbols.undefined2; + while (symbol != Parser.ParserSymbols.codeend2) + { + if(isInError)break; + long position = binaryReader.BaseStream.Position; + symbol = (Parser.ParserSymbols)binaryReader.ReadInt32(); + switch (symbol) + { + case Parser.ParserSymbols.directive_clear_modified2 : + DirectiveClearModified(); + break; + case Parser.ParserSymbols.declare2 : + Declare(); + break; + case Parser.ParserSymbols.oror2 : + Or(); + break; + case Parser.ParserSymbols.andand2 : + AndAnd(); + break; + case Parser.ParserSymbols.less2 : + Less(); + break; + case Parser.ParserSymbols.lessequal2 : + LessEqual(); + break; + case Parser.ParserSymbols.greater2 : + Greater(); + break; + case Parser.ParserSymbols.greaterequal2 : + GreaterEqual(); + break; + case Parser.ParserSymbols.equalequal2 : + EqualEqual(); + break; + case Parser.ParserSymbols.notequal2 : + NotEqual(); + break; + case Parser.ParserSymbols.noop2 : + Nop(); + break; + case Parser.ParserSymbols.goto2 : + Goto(); + break; + case Parser.ParserSymbols.defaddr2 : + Defaddr(); + break; + case Parser.ParserSymbols.divide2 : // when we add we pop 2 items, add them and then push the result on the stack + Divide(); + break; + case Parser.ParserSymbols.multiply2 : // when we add we pop 2 items, add them and then push the result on the stack + Multiply(); + break; + case Parser.ParserSymbols.add2 : // when we add we pop 2 items, add them and then push the result on the stack + Add(); + break; + case Parser.ParserSymbols.subtract2 : + Subtract(); + break; + case Parser.ParserSymbols.assign2 : + Assign(); + break; + case Parser.ParserSymbols.variableaccess2 : + VariableAccess(); + break; + case Parser.ParserSymbols.call2 : + Call(); + break; + case Parser.ParserSymbols.push2 : + Push(); + break; + case Parser.ParserSymbols.negate2 : + Negate(); + break; + case Parser.ParserSymbols.not2 : + Not(); + break; + case Parser.ParserSymbols.codeend2 : + break; + default : + logger.Info(String.Format("No action for symbol {0}",Parser.SymbolToString(symbol))); + break; + } + } + return !isInError; + } + catch(Exception exception) + { + logger.ErrorFormat("Exception during Assembly:{0}",exception); + return false; + } + } +// the disassembler + public List Disassemble() + { + List disassembly=new List(); + + String variableType = null; + String variableName = null; + isInError=false; + Parser.ParserSymbols symbol = Parser.ParserSymbols.undefined2; + binaryReader.BaseStream.Seek(0, SeekOrigin.Begin); + long position=binaryReader.BaseStream.Position; + long finalPosition = 0; + long instructionLength=0; + + disassembly.Add("[position:instructionlength] S:Symbol V:Value VT:VariableType VN:VariableName VV:VariableValue FT:FunctionType FN:FunctionName STK:Stack Parameter Count"); + + while (symbol != Parser.ParserSymbols.codeend2) + { + long value = 0L; + position = binaryReader.BaseStream.Position; + try + { + symbol = (Parser.ParserSymbols)binaryReader.ReadInt32(); + } + catch (Exception) + { + break; + } + + switch (symbol) + { + case Parser.ParserSymbols.defaddr2 : + value = binaryReader.ReadInt64(); + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1} {2}",Format(position,instructionLength),Parser.SymbolToString(symbol),value)); + break; + case Parser.ParserSymbols.goto2 : + value = binaryReader.ReadInt64(); + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1} {2}",Format(position,instructionLength),Parser.SymbolToString(symbol),value)); + break; + case Parser.ParserSymbols.declare2 : + variableType = binaryReader.ReadString(); + variableName = binaryReader.ReadString(); + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1} {2} {3}",Format(position,instructionLength),Parser.SymbolToString(symbol),variableType,variableName)); + break; + case Parser.ParserSymbols.directive_clear_modified2 : + case Parser.ParserSymbols.oror2 : + case Parser.ParserSymbols.andand2 : + case Parser.ParserSymbols.less2 : + case Parser.ParserSymbols.lessequal2 : + case Parser.ParserSymbols.greater2 : + case Parser.ParserSymbols.greaterequal2 : + case Parser.ParserSymbols.equalequal2 : + case Parser.ParserSymbols.notequal2 : + case Parser.ParserSymbols.noop2 : + case Parser.ParserSymbols.divide2 : // when we div we pop 2 items, div them and then push the result on the stack + case Parser.ParserSymbols.multiply2 : // when we mul we pop 2 items, mul them and then push the result on the stack + case Parser.ParserSymbols.add2 : // when we add we pop 2 items, add them and then push the result on the stack + case Parser.ParserSymbols.subtract2 : + case Parser.ParserSymbols.assign2 : + case Parser.ParserSymbols.negate2 : + case Parser.ParserSymbols.not2 : + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1}",Format(position,instructionLength),Parser.SymbolToString(symbol))); + break; + case Parser.ParserSymbols.codeend2 : + instructionLength=binaryReader.BaseStream.Position-position; + finalPosition = binaryReader.BaseStream.Position; + disassembly.Add(String.Format("{0} {1}",Format(position,instructionLength),Parser.SymbolToString(symbol))); + break; + case Parser.ParserSymbols.variableaccess2 : + variableType = binaryReader.ReadString(); + variableName = binaryReader.ReadString(); + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1} {2} {3}",Format(position,instructionLength),Parser.SymbolToString(symbol),variableType,variableName)); + break; + case Parser.ParserSymbols.call2 : + String functionNameType = binaryReader.ReadString(); + String functionName = binaryReader.ReadString(); + int stackParameterCount = binaryReader.ReadInt32(); + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1} {2} {3} stack[{4}]",Format(position,instructionLength),Parser.SymbolToString(symbol),functionNameType,functionName,stackParameterCount)); + break; + case Parser.ParserSymbols.push2 : + variableType = binaryReader.ReadString(); + String variableValue = binaryReader.ReadString(); + instructionLength=binaryReader.BaseStream.Position-position; + disassembly.Add(String.Format("{0} {1} {2} {3}",Format(position,instructionLength),Parser.SymbolToString(symbol),variableType,variableValue)); + break; + default : + break; + } + } + binaryReader.BaseStream.Seek(0, SeekOrigin.Begin); + disassembly.Add(String.Format("[{0}:0]",finalPosition)); + return disassembly; + } + private String Format(long position,long length) + { + return String.Format("[{0}:{1}]",Utility.Pad(position.ToString(),'0',6),Utility.Pad(length.ToString(),'0',6)); + } + public void DisassembleToLog() + { + List disassembly=Disassemble(); + foreach(String line in disassembly) + { + logger.Info(line); + } + } +// Fixup is used for combining multiple assembly streams. It resolves jump targets across each of these streams by offsetting the target address destinations by the relative code lengths of the streams. + public void Fixup(long fixupAddress) + { + Dictionary offsets = new Dictionary(); + String variableType = null; + if(isInError)return; + Parser.ParserSymbols symbol = Parser.ParserSymbols.undefined2; + binaryReader.BaseStream.Seek(0, SeekOrigin.Begin); + while (symbol != Parser.ParserSymbols.codeend2) + { + long offset = 0L; + long value = 0L; + long position = binaryReader.BaseStream.Position; + try { symbol = (Parser.ParserSymbols)binaryReader.ReadInt32(); } + catch (Exception) { break; } + switch (symbol) + { + case Parser.ParserSymbols.defaddr2 : + offset = binaryReader.BaseStream.Position; + value = binaryReader.ReadInt64(); + offsets.Add(offset,value); + break; + case Parser.ParserSymbols.goto2 : + offset = binaryReader.BaseStream.Position; + value = binaryReader.ReadInt64(); + offsets.Add(offset,value); + break; + case Parser.ParserSymbols.directive_clear_modified2 : + case Parser.ParserSymbols.oror2 : + case Parser.ParserSymbols.andand2 : + case Parser.ParserSymbols.less2 : + case Parser.ParserSymbols.lessequal2 : + case Parser.ParserSymbols.greater2 : + case Parser.ParserSymbols.greaterequal2 : + case Parser.ParserSymbols.equalequal2 : + case Parser.ParserSymbols.notequal2 : + case Parser.ParserSymbols.noop2 : + case Parser.ParserSymbols.divide2 : // when we add we pop 2 items, add them and then push the result on the stack + case Parser.ParserSymbols.multiply2 : // when we add we pop 2 items, add them and then push the result on the stack + case Parser.ParserSymbols.add2 : // when we add we pop 2 items, add them and then push the result on the stack + case Parser.ParserSymbols.subtract2 : + case Parser.ParserSymbols.assign2 : + case Parser.ParserSymbols.negate2 : + case Parser.ParserSymbols.declare2 : + case Parser.ParserSymbols.not2 : + break; + case Parser.ParserSymbols.variableaccess2 : + variableType = binaryReader.ReadString(); + String variableName = binaryReader.ReadString(); + break; + case Parser.ParserSymbols.call2 : + String functionNameType = binaryReader.ReadString(); + String functionName = binaryReader.ReadString(); + int stackParameterCount = binaryReader.ReadInt32(); + break; + case Parser.ParserSymbols.push2 : + variableType = binaryReader.ReadString(); + String variableValue = binaryReader.ReadString(); + break; + case Parser.ParserSymbols.codeend2 : + break; + default : + break; + } + } + binaryReader.BaseStream.Seek(0, SeekOrigin.Begin); + BinaryWriter binaryWriter = new BinaryWriter(binaryReader.BaseStream); + List addressList = new List(offsets.Keys); + foreach (long address in addressList) + { + binaryWriter.Seek((int)address, SeekOrigin.Begin); + long value=offsets[address]; + binaryWriter.Write((long)(value+fixupAddress)); + binaryWriter.Flush(); + } + binaryReader.BaseStream.Seek(0, SeekOrigin.Begin); + } +// ****************************************************************************************************************************************************************************************************************************** +// ****************************************************************************************************** D E C L A R A T I O N ************************************************************************************************ +// ****************************************************************************************************************************************************************************************************************************** + private void Declare() + { + if(isInError)return; + String variableType = binaryReader.ReadString(); + String variableName = binaryReader.ReadString(); + if(symbolTable.ContainsKey(variableName)) + { + isInError = true; + lastMessage=String.Format("Runtime Error: The variable '{0}' has already been declared.",variableName); + return; + } + Symbol symbol = new Symbol(variableName, Scanner.ScanSymbols.variable1, Symbol.SymbolType.UserDynamicSymbol); + symbol.GenericData = new GenericData(); + symbol.GenericData.SetNull(variableType); + symbolTable.Add(variableName, symbol); + } +// ****************************************************************************************************************************************************************************************************************************** +// ************************************************************************************************************* C A L L S ***************************************************************************************************** +// ****************************************************************************************************************************************************************************************************************************** + private void Call() + { + try + { + if(isInError)return; + String functionNameType = binaryReader.ReadString(); + String functionName = binaryReader.ReadString(); + int stackParameterCount = binaryReader.ReadInt32(); + StackElement[] stackElements = new StackElement[stackParameterCount]; + for (int index = stackElements.Length - 1; index >= 0; index--) + { + stackElements[index] = codeStack.Pop(); + } + switch (functionName) + { + case "abs": + PerformABS(stackElements); + break; + case "pow": + PerformPOW(stackElements); + break; + case "sqrt": + PerformSQRT(stackElements); + break; + case "convert" : + PerformConvert(stackElements); + break; + case "in" : + PerformIn(stackElements); + break; + case "isnull" : + PerformIsNull(stackElements); + break; + case "like" : + PerformLike(stackElements); + break; + case "trim" : + PerformTrim(stackElements); + break; + case "upper" : + PerformUpper(stackElements); + break; + case "lower" : + PerformLower(stackElements); + break; + case "substring" : + PerformSubstring(stackElements); + break; + case "getprice" : + PerformGetPrice(stackElements); + break; + default: + break; + } + } + finally + { + } + } +// ****************************************************************************************************************************************************************************************************************************** +// **************************************************************************************************** O P E R A T I O N S ***************************************************************************************************** +// ****************************************************************************************************************************************************************************************************************************** + private void Nop() + { + } + /// + /// Goto reads a stream position from the input stream and seeks to that location and code execution will continue at that location. + /// + private void Goto() + { + try + { + if(isInError)return; + long position = binaryReader.ReadInt64(); + binaryReader.BaseStream.Seek(position, SeekOrigin.Begin); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + /// + /// DefAddr reads a stream position from the input stream and pops a boolean value from the stack which is the result of a previous logical operation. + /// If the boolean value is false the stream will seek to position and code execution will continue at that location. + /// + private void Defaddr() + { + try + { + if(isInError)return; + long position = binaryReader.ReadInt64(); + StackElement stackElement1 = codeStack.Pop(); + bool result = stackElement1.Value.Get(); + if (!result) binaryReader.BaseStream.Seek(position, SeekOrigin.Begin); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Or() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.Or(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void AndAnd() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.And(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void LessEqual() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.LessEqual(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Greater() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.Greater(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void GreaterEqual() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + element.Value = genericData1.GreaterEqual(genericData2); + if(null==genericData1)genericData1=new GenericData(); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void EqualEqual() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.EqualEqual(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void NotEqual() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.NotEqual(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Less() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + if(null==genericData1)genericData1=new GenericData(); + element.Value = genericData1.Less(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Negate() + { + try + { + if(isInError)return; + StackElement stackElement = codeStack.Pop(); + StackElement element = new StackElement(); + if (null != stackElement.Symbol) element.Value = stackElement.Symbol.GenericData.Negate(); + else element.Value = stackElement.Value.Negate(); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Not() + { + try + { + if(isInError)return; + StackElement stackElement = codeStack.Pop(); + StackElement element = new StackElement(); + if (null != stackElement.Symbol) element.Value = stackElement.Symbol.GenericData.Not(); + else element.Value = stackElement.Value.Not(); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Add() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + element.Value = genericData1.Add(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Multiply() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + element.Value = genericData2.Multiply(genericData1); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Divide() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + element.Value = genericData1.Divide(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + private void Subtract() + { + try + { + if(isInError)return; + StackElement stackElement2 = codeStack.Pop(); + StackElement stackElement1 = codeStack.Pop(); + StackElement element = new StackElement(); + GenericData genericData1 = null == stackElement1.Symbol ? stackElement1.Value : stackElement1.Symbol.GenericData; + GenericData genericData2 = null == stackElement2.Symbol ? stackElement2.Value : stackElement2.Symbol.GenericData; + element.Value = genericData1.Subtract(genericData2); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void DirectiveClearModified() + { + try + { + if(isInError)return; + symbolTable.ClearModified(); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void Assign() + { + try + { + if(isInError)return; + StackElement sourceElement = codeStack.Pop(); + StackElement destinationElement = codeStack.Pop(); + GenericData sourceData = (null == sourceElement.Symbol ? sourceElement.Value : sourceElement.Symbol.GenericData); + if (null != destinationElement.Symbol) + { + destinationElement.Symbol.GenericData = GenericData.Clone(sourceData); + destinationElement.Symbol.IsModified=true; + } + else + { + destinationElement.Value = new GenericData(); + destinationElement.Value.Data = GenericData.Clone(sourceData); + destinationElement.Value.IsModified=true; + } + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + logger.ErrorFormat("Exception:{0}",exception); + } + } + public void VariableAccess() + { + try + { + if(isInError)return; + String variableType = binaryReader.ReadString(); + String variableName = binaryReader.ReadString(); + Symbol symbol = null; + if (!symbolTable.ContainsKey(variableName)) // if variable name does not exist then create it on the fly + { + symbol = new Symbol(); + GenericData genericData = new GenericData(); + symbol.SymbolName = variableName; + symbol.GenericData = genericData; + symbol.GenericData.SetNull(); + symbolTable.Add(variableName, symbol); + } + symbol = symbolTable[variableName]; + StackElement stackElement = new StackElement(); + stackElement.Symbol = symbol; + codeStack.Push(stackElement); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void Push() + { + try + { + if(isInError)return; + String variableType = binaryReader.ReadString(); + String variableValue = binaryReader.ReadString(); + StackElement stackElement = new StackElement(); + stackElement.Value = new GenericData(); + if(variableType.Equals("System.Nullable"))stackElement.Value.SetData(null, variableType); + else stackElement.Value.SetData(variableValue, variableType); + codeStack.Push(stackElement); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } +// ****************************************************************************************************************************************************************************************************************************** +// ********************************************************************************************************** F U N C T I O N S ************************************************************************************************* +// ****************************************************************************************************************************************************************************************************************************** + public void PerformABS(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (1 != stackElements.Length) return; + StackElement element = new StackElement(); + GenericData param1 = null; + if (null == stackElements[0].Value) param1 = stackElements[0].Symbol.GenericData; + else param1 = stackElements[0].Value; + element.Value = param1.Abs(); + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformPOW(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (2 != stackElements.Length) return; + StackElement element = new StackElement(); + GenericData param1 = null; + GenericData param2 = null; + + if (null == stackElements[0].Value) param1 = stackElements[0].Symbol.GenericData; + else param1 = stackElements[0].Value; + if (null == stackElements[1].Value) param2 = stackElements[1].Symbol.GenericData; + else param2 = stackElements[1].Value; + GenericData genericData = new GenericData(); + genericData.SetData(Math.Pow(param1.Get(), param2.Get())); + element.Value = genericData; + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformSQRT(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (1 != stackElements.Length) return; + StackElement element = new StackElement(); + GenericData param1 = null; + + if (null == stackElements[0].Value) param1 = stackElements[0].Symbol.GenericData; + else param1 = stackElements[0].Value; + GenericData genericData = new GenericData(); + genericData.SetData(Math.Sqrt(param1.Get())); + element.Value = genericData; + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformConvert(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (2 != stackElements.Length) return; + StackElement element = new StackElement(); + GenericData genericData = null; + GenericData param1 = null; + GenericData param2 = null; + + if (null == stackElements[0].Value) param1 = stackElements[0].Symbol.GenericData; + else param1 = stackElements[0].Value; + if (null == stackElements[1].Value) param2 = stackElements[1].Symbol.GenericData; + else param2 = stackElements[1].Value; + genericData=GenericData.PerformConvert(param1,param2); + element.Value = genericData; + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformSubstring(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (3 != stackElements.Length) return; + StackElement result = new StackElement(); + GenericData resultData = null; + GenericData argumentData = null; + GenericData startIndexData = null; + GenericData lengthData = null; + + if (null == stackElements[0].Value) argumentData = stackElements[0].Symbol.GenericData; + else argumentData = stackElements[0].Value; + + if (null == stackElements[1].Value) startIndexData = stackElements[1].Symbol.GenericData; + else startIndexData = stackElements[1].Value; + + if (null == stackElements[2].Value) lengthData = stackElements[2].Symbol.GenericData; + else lengthData = stackElements[2].Value; + + resultData=argumentData.Substring(startIndexData,lengthData); + result.Value = resultData; + codeStack.Push(result); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformGetPrice(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (3 != stackElements.Length) return; + StackElement result = new StackElement(); + GenericData resultData = null; + GenericData symbolData = null; + GenericData dateData = null; + GenericData opData = null; + + if (null == stackElements[0].Value) symbolData = stackElements[0].Symbol.GenericData; + else symbolData = stackElements[0].Value; + + if (null == stackElements[1].Value) dateData = stackElements[1].Symbol.GenericData; + else dateData = stackElements[1].Value; + + if (null == stackElements[2].Value) opData = stackElements[2].Symbol.GenericData; + else opData = stackElements[2].Value; + + resultData=symbolData.GetPrice(dateData,opData); + result.Value = resultData; + codeStack.Push(result); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformTrim(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (1 != stackElements.Length) return; + StackElement result = new StackElement(); + GenericData resultData = null; + GenericData argumentData = null; + + if (null == stackElements[0].Value) argumentData = stackElements[0].Symbol.GenericData; + else argumentData = stackElements[0].Value; + + resultData=argumentData.Trim(); + result.Value = resultData; + codeStack.Push(result); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformUpper(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (1 != stackElements.Length) return; + StackElement result = new StackElement(); + GenericData resultData = null; + GenericData argumentData = null; + if (null == stackElements[0].Value) argumentData = stackElements[0].Symbol.GenericData; + else argumentData = stackElements[0].Value; + resultData = argumentData.Upper(); + result.Value = resultData; + codeStack.Push(result); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformLower(StackElement[] stackElements) + { + try + { + if(isInError)return; + if (1 != stackElements.Length) return; + StackElement result = new StackElement(); + GenericData resultData = null; + GenericData argumentData = null; + + if (null == stackElements[0].Value) argumentData = stackElements[0].Symbol.GenericData; + else argumentData = stackElements[0].Value; + resultData = argumentData.Lower(); + result.Value = resultData; + codeStack.Push(result); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformIn(StackElement[] stackElements) + { + try + { + if(isInError)return; + StackElement element = new StackElement(); + GenericData genericData = new GenericData(); + StackElement argument= codeStack.Pop(); + GenericData argumentData = null; + bool evaluationResult = false; + if (null != argument.Value) argumentData = argument.Value; + else argumentData = argument.Symbol.GenericData; + for (int index = 0; index < stackElements.Length; index++) + { + GenericData stackData = null; + if (null == stackElements[index].Value) stackData = stackElements[index].Symbol.GenericData; + else stackData = stackElements[index].Value; + GenericData result = stackData.EqualEqual(argumentData); + if (result.IsNull()) continue; + if(result.Get().Equals(true)) + { + evaluationResult = true; + break; + } + } + genericData.SetData(evaluationResult); + element.Value = genericData; + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformIsNull(StackElement[] stackElements) + { + try + { + if(isInError)return; + StackElement element = new StackElement(); + GenericData stackData = null; + for (int index = 0; index < stackElements.Length; index++) + { + if (null == stackElements[index].Value) stackData = stackElements[index].Symbol.GenericData; + else stackData = stackElements[index].Value; + if (!stackData.IsNull()) break; + } + element.Value = stackData; + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + public void PerformLike(StackElement[] stackElements) + { + try + { + if(isInError)return; + StackElement element = new StackElement(); + StackElement stackElement= codeStack.Pop(); + GenericData stackData = null; + GenericData genericData = null; + GenericData param1 = null; + if (1 != stackElements.Length) return; + if (null != stackElement.Value) stackData = stackElement.Value; + else stackData = stackElement.Symbol.GenericData; + if (null == stackElements[0].Value) param1 = stackElements[0].Symbol.GenericData; + else param1 = stackElements[0].Value; + if (null == stackData) { genericData = new GenericData(); genericData.SetData(false); } + else genericData=stackData.Like(param1); + element.Value = genericData; + codeStack.Push(element); + } + catch(Exception exception) + { + isInError=true; + lastMessage=exception.ToString(); + } + } + } +} diff --git a/Axiom.Core/Interpreter/AxiomException.cs b/Axiom.Core/Interpreter/AxiomException.cs new file mode 100644 index 0000000..7debdfd --- /dev/null +++ b/Axiom.Core/Interpreter/AxiomException.cs @@ -0,0 +1,21 @@ +using System; +using System.Data; + +// FileName : AxiomException.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class AxiomException : Exception + { + public AxiomResult AxiomResult{get;set;} + public AxiomException() + { + } + public AxiomException(AxiomResult axiomResult,Exception exception) + : base(exception.Message,exception) + { + this.AxiomResult=axiomResult; + } + } +} diff --git a/Axiom.Core/Interpreter/AxiomResult.cs b/Axiom.Core/Interpreter/AxiomResult.cs new file mode 100644 index 0000000..78f520d --- /dev/null +++ b/Axiom.Core/Interpreter/AxiomResult.cs @@ -0,0 +1,26 @@ +using System; +using System.Data; + +// FileName : AxiomResult.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class AxiomResult + { + public AxiomResult() + { + Success = false; + } + public AxiomResult(bool success,String lastMessage) + { + Success = success; + LastMessage = lastMessage; + } + public bool Success { get; set; } + public String LastMessage { get; set; } + public DataTable DataTable { get; set; } + public int ContextSpecificId{get;set;} + public Object ContextSpecificObj { get; set; } + } +} diff --git a/Axiom.Core/Interpreter/AxiomTrace.cs b/Axiom.Core/Interpreter/AxiomTrace.cs new file mode 100644 index 0000000..ca5b419 --- /dev/null +++ b/Axiom.Core/Interpreter/AxiomTrace.cs @@ -0,0 +1,44 @@ +using System; +using System.Configuration; +using System.Diagnostics; + +// FileName : AxiomTrace.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class AxiomTrace + { + public AxiomTrace() + { + IsTracing = false; + } + public bool IsTracing { get; set; } + public String[] Values { get; set; } + public int Column { get; set; } + + public static AxiomTrace FromConfig() + { + AxiomTrace trace = new AxiomTrace(); + try + { + String tracingEnabled = ConfigurationManager.AppSettings["AXIOM_TRACE_ENABLED"]; + if (null == tracingEnabled) return trace; + trace.IsTracing = Boolean.Parse(tracingEnabled); + trace.Column = int.Parse(ConfigurationManager.AppSettings["AXIOM_TRACE_COLUMN"]); + trace.Values = ConfigurationManager.AppSettings["AXIOM_TRACE_VALUES"].Split(','); + return trace; + } + catch (Exception /*exception*/) + { + return trace; + } + } + public bool Break() + { + if (!Debugger.IsAttached) return false; + Debugger.Break(); // if you wind up here you are in the debugger AND AXIOM_TRACE_ENABLED is set in the congifuration AND the break condition has been met. Step over this breakpoint to continue debugging OR set AXIOM_TRACE_ENABLED to false in config and restart + return true; + } + } +} diff --git a/Axiom.Core/Interpreter/CodeRunner.cs b/Axiom.Core/Interpreter/CodeRunner.cs new file mode 100644 index 0000000..00f1d05 --- /dev/null +++ b/Axiom.Core/Interpreter/CodeRunner.cs @@ -0,0 +1,422 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Data; +using log4net; +using Axiom.Utils; + +// FileName : CodeRunner.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class CodeRunner : IDisposable + { + private static ILog logger = LogManager.GetLogger(typeof(CodeRunner)); + private SymbolTable symbolTable = null; + private Dictionary precompiles = new Dictionary(); + private bool useCache=false; + private bool trace=false; + private bool parseStrict=false; + private bool scanStrict=false; + private bool disposed = false; + private int parseSymbolCount=0; + + public CodeRunner() + { + symbolTable=new SymbolTable(); + IsInError=false; + } + ~CodeRunner() + { + Dispose(false); + } + public void Dispose() + { + if (!disposed) + { + Dispose(true); + GC.SuppressFinalize(this); + } + } + protected virtual void Dispose(bool disposing) + { + if(disposing) + { + List streams=new List(precompiles.Values); + foreach(Stream stream in streams) + { + try{stream.Close();stream.Dispose();}catch(Exception){;} + } + } + disposed = true; + } + public int ParseSymbolsCount + { + get{return parseSymbolCount;} + } + public String LastMessage{ get; private set;} + public bool IsInError { get; private set;} + public bool ScanStrict + { + get{return scanStrict;} + set{scanStrict=value;} + } + public bool ParseStrict + { + get{return parseStrict;} + set{parseStrict=value;} + } + public bool Trace + { + get {return trace;} + set {trace=value;} + } + public bool UseCache + { + get { return useCache; } + set { useCache = value; } + } + public String GetValue(String name) + { + if (!symbolTable.ContainsKey(name)) return "null"; + Symbol symbol = symbolTable[name]; + GenericData genericData = symbol.GenericData; + if (null == genericData || genericData.IsNull()) return "null"; + return genericData.Get(); + } + public T GetValue(String name) + { + if(!symbolTable.ContainsKey(name)) return default(T); + Symbol symbol=symbolTable[name]; + GenericData genericData=symbol.GenericData; + if(null==genericData||genericData.IsNull()) return default(T); + return genericData.Get(); + } + public SymbolTable SymbolTable + { + get {return symbolTable;} + } + public void Reset() + { + if (null == symbolTable) return; + symbolTable.Reset(); + } + public bool Execute(DataTable dataTable, int row, String expression) + { + Reset(); + return ExecuteExpressionOnRow(dataTable, row, expression); + } + private bool ExecuteExpressionOnRow(DataTable dataTable, int row, String expression) + { + symbolTable.AddUserSymbols(dataTable); // add symbol names from the data table columns + symbolTable.AddUserValues(dataTable.Rows[row], dataTable); + if (UseCache) + { + if (!ApplyRuleWithCache(expression)) return false; + } + else + { + if (!Execute(expression))return false; + } + return true; + } + public bool Execute(String expression) + { + BinaryReader binaryReader = null; + BinaryWriter binaryWriter = null; + BinaryReader parserReader = null; + BinaryWriter parserWriter = null; + BinaryReader assemblerReader = null; + Assembler assembler = null; + + try + { + IsInError=false; + LastMessage=""; + binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + binaryWriter = new BinaryWriter(new MemoryStream()); + Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + scanner.Debug = Trace; + if (!scanner.Analyze()) + { + LastMessage="Failed to scan the input document, possible invalid character sequence."; + IsInError=true; + logger.ErrorFormat(LastMessage); + return false; + } + binaryWriter.BaseStream.Seek(0, SeekOrigin.Begin); + parserReader = new BinaryReader(binaryWriter.BaseStream); + parserWriter = new BinaryWriter(new MemoryStream()); + Parser parser = new Parser(parserReader, parserWriter, symbolTable); + parser.Debug = Trace; + parser.Parse(); + parseSymbolCount=parser.ParseSymbolsCount; + if (parser.IsInError) + { + LastMessage=String.Format("Failed to parse the input, {0} at {1}", parser.LastMessage, parser.LastLineNumber); + IsInError=true; + logger.ErrorFormat(LastMessage); + return false; + } + parserWriter.BaseStream.Seek(0, SeekOrigin.Begin); + assemblerReader = new BinaryReader(parserWriter.BaseStream); + assembler = new Assembler(assemblerReader, symbolTable); + assembler.Debug = Trace; + assembler.Assemble(); + if(assembler.IsInError) + { + LastMessage=String.Format("Error: Failed to run the assembler, {0}", assembler.LastMessage); + IsInError=true; + logger.ErrorFormat(LastMessage); + return false; + } + if (Trace) DumpSymbolTable(); + assembler.Dispose(); + assembler = null; + return true; + } + catch (Exception exception) + { + LastMessage=String.Format("Exception:{0}",exception.ToString()); + IsInError=true; + logger.ErrorFormat(LastMessage); + return false; + } + finally + { + if (null != binaryReader) { binaryReader.Close();binaryReader.Dispose(); } + if (null != binaryWriter) { binaryWriter.Close();binaryWriter.Dispose(); } + if (null != parserReader) { parserReader.Close();parserReader.Dispose(); } + if (null != parserWriter) { parserWriter.Close(); parserWriter.Dispose(); } + if (null != assemblerReader) { assemblerReader.Close(); assemblerReader.Dispose(); } + if (null != assembler) { assembler.Dispose();assembler = null; } + } + } + + public List Disassemble(String expression) + { + BinaryReader binaryReader = null; + BinaryWriter binaryWriter = null; + BinaryReader parserReader = null; + BinaryWriter parserWriter = null; + BinaryReader assemblerReader = null; + Assembler assembler = null; + List disassembly=new List(); + + try + { + IsInError=false; + LastMessage=""; + binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + binaryWriter = new BinaryWriter(new MemoryStream()); + Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + scanner.Debug = Trace; + if (!scanner.Analyze()) + { + LastMessage="Failed to scan the input document, possible invalid character sequence."; + IsInError=true; + logger.ErrorFormat(LastMessage); + return disassembly; + } + binaryWriter.BaseStream.Seek(0, SeekOrigin.Begin); + parserReader = new BinaryReader(binaryWriter.BaseStream); + parserWriter = new BinaryWriter(new MemoryStream()); + Parser parser = new Parser(parserReader, parserWriter, symbolTable); + parser.Debug = Trace; + parser.Parse(); + parseSymbolCount=parser.ParseSymbolsCount; + if (parser.IsInError) + { + LastMessage=String.Format("Failed to parse the input, {0} at {1}", parser.LastMessage, parser.LastLineNumber); + IsInError=true; + logger.ErrorFormat(LastMessage); + return disassembly; + } + parserWriter.BaseStream.Seek(0, SeekOrigin.Begin); + assemblerReader = new BinaryReader(parserWriter.BaseStream); + assembler = new Assembler(assemblerReader, symbolTable); + assembler.Debug = Trace; + return assembler.Disassemble(); + } + catch (Exception exception) + { + LastMessage=String.Format("Exception:{0}",exception.ToString()); + IsInError=true; + logger.ErrorFormat(LastMessage); + return disassembly; + } + finally + { + if (null != binaryReader) { binaryReader.Close();binaryReader.Dispose(); } + if (null != binaryWriter) { binaryWriter.Close();binaryWriter.Dispose(); } + if (null != parserReader) { parserReader.Close();parserReader.Dispose(); } + if (null != parserWriter) { parserWriter.Close(); parserWriter.Dispose(); } + if (null != assemblerReader) { assemblerReader.Close(); assemblerReader.Dispose(); } + if (null != assembler) { assembler.Dispose();assembler = null; } + } + } + + +// The cache will not work as effectively if the expression variables are not loaded directly into the SymbolTable + public bool ApplyRuleWithCache(String expression) + { + BinaryReader assemblerReader = null; + Stream precompiledStream = null; + Assembler assembler = null; + try + { + int hashcode = expression.GetHashCode(); + if (Trace) logger.InfoFormat("Trace:{0}", expression); + if (precompiles.ContainsKey(hashcode)) + { + precompiledStream = precompiles[hashcode]; // if the precompiled cache contains the expression then fetch it + } + else + { + precompiledStream = Compile(expression,true); // otherwise compile the expression and add it to the cache. + precompiles.Add(hashcode, precompiledStream); + } + if (null == precompiledStream) return false; + precompiledStream.Seek(0, SeekOrigin.Begin); + assemblerReader = new BinaryReader(precompiledStream); + assembler = new Assembler(assemblerReader, symbolTable); + assembler.Assemble(); + if(assembler.IsInError) + { + LastMessage=String.Format("Error: Failed to run the assembler, {0}", assembler.LastMessage); + logger.ErrorFormat(LastMessage); + return false; + } + assembler.Dispose(); + assembler = null; + return true; + } + catch (Exception exception) + { + LastMessage=String.Format("Exception:{0}", exception.ToString()); + logger.ErrorFormat(LastMessage); + return false; + } + finally + { + if (null != assembler) { assembler.Dispose(); } + } + } + public AxiomResult SyntaxCheck(String expression) + { + BinaryReader binaryReader = null; + BinaryWriter binaryWriter = null; + BinaryReader parserReader = null; + BinaryWriter parserWriter = null; + AxiomResult axiomResult = new AxiomResult(); + + try + { + axiomResult.Success = true; + binaryWriter = new BinaryWriter(new MemoryStream()); + binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + if (!scanner.Analyze()) + { + axiomResult.Success = false; + axiomResult.LastMessage = "Failed to scan the input document, possible invalid character sequence."; + return axiomResult; + } + binaryWriter.BaseStream.Seek(0, SeekOrigin.Begin); + parserReader = new BinaryReader(binaryWriter.BaseStream); + parserWriter = new BinaryWriter(new MemoryStream()); + Parser parser = new Parser(parserReader, parserWriter, symbolTable); +// parser.StrictMode=false; // we do not require all variable declarations to be present. + parser.StrictStatementMode=true; // we require at least one valid statement to be processed. + parser.Parse(); + if (parser.IsInError) + { + axiomResult.Success = false; + axiomResult.LastMessage = "Message:" + parser.LastMessage; + return axiomResult; + } + return axiomResult; + } + catch (Exception exception) + { + axiomResult.LastMessage = String.Format("Exception:{0}", exception.ToString()); + logger.Error(axiomResult.LastMessage); + return axiomResult; + } + finally + { + if (null != binaryReader) { binaryReader.Close(); binaryReader.Dispose(); } + if (null != binaryWriter) { binaryWriter.Close(); binaryWriter.Dispose(); } + if (null != parserReader) { parserReader.Close(); parserReader.Dispose(); } + if (null != parserWriter) { parserWriter.Close(); parserWriter.Dispose(); } + } + } + private Stream Compile(String expression, bool includeCodeEnd = true) + { + BinaryReader binaryReader = null; + BinaryWriter binaryWriter = null; + BinaryReader parserReader = null; + BinaryWriter parserWriter = null; + + try + { + binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + binaryWriter = new BinaryWriter(new MemoryStream()); + Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + scanner.Debug = Trace; + if(!scanner.Analyze()) + { + LastMessage = "Failed to scan the input document, possible invalid character sequence"; + logger.Info(LastMessage); + return null; + } + binaryReader.Close(); + binaryReader.Dispose(); + binaryWriter.BaseStream.Seek(0, SeekOrigin.Begin); + parserReader = new BinaryReader(binaryWriter.BaseStream); + parserWriter = new BinaryWriter(new MemoryStream()); + Parser parser = new Parser(parserReader, parserWriter, symbolTable); + parser.Debug = Trace; + parser.Parse(includeCodeEnd); + if (parser.IsInError) + { + LastMessage = String.Format("Error:{0} at {1}", parser.LastMessage, parser.LastLineNumber); + logger.Info(LastMessage); + return null; + } + parserReader.Close(); + parserReader.Dispose(); + parserReader = null; + binaryWriter.Close(); + binaryWriter.Dispose(); + binaryWriter = null; + parserWriter.BaseStream.Seek(0, SeekOrigin.Begin); + return parserWriter.BaseStream; + } + catch (Exception exception) + { + logger.ErrorFormat("Exception:{0}", exception.ToString()); + return null; + } + finally + { + if (null != binaryReader) { binaryReader.Close(); binaryReader.Dispose(); } + if (null != binaryWriter) { binaryWriter.Close(); binaryWriter.Dispose(); } + if (null != parserReader) { parserReader.Close();parserReader.Dispose(); } + } + } + private void DumpSymbolTable() + { + logger.Info("********************************************************* O U T P U T ************************************************"); + List list = new List(symbolTable.Values); + list = (from Symbol symbol in list where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserSymbol) select symbol).ToList(); + foreach (Symbol symbol in list) + { + logger.Info(String.Format("SYMBOL NAME:'{0}',VALUE:'{1}'", symbol.SymbolName, null == symbol.GenericData ? "" : symbol.GenericData.ToString())); + } + } + } +} \ No newline at end of file diff --git a/Axiom.Core/Interpreter/Emitter.cs b/Axiom.Core/Interpreter/Emitter.cs new file mode 100644 index 0000000..ddb7513 --- /dev/null +++ b/Axiom.Core/Interpreter/Emitter.cs @@ -0,0 +1,204 @@ +using System; +using System.IO; +using System.Linq; +using log4net; + +// FileName : Emitter.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class Emitter + { + private static ILog logger = LogManager.GetLogger(typeof(Emitter)); + private bool emitting = true; + private int lastSymbol; + private BinaryReader inputStream; + private BinaryWriter outputStream; + private bool debug = true; + + public Emitter(BinaryReader inputStream, BinaryWriter outputStream) + { + this.inputStream = inputStream; + this.outputStream = outputStream; + } + public bool Debug + { + get { return debug; } + set { debug = value; } + } + public void Emit(String literalValue) + { + if (!emitting) return; + outputStream.Write(literalValue.Length); + outputStream.Write(literalValue); + } +// ************************************************************************ + public void Emit(Scanner.ScanSymbols code) + { + if (!emitting) return; + outputStream.Write((int)code); + if(Debug)logger.Info(Scanner.SymbolToString(code)); + } + public void Emit(Scanner.ScanSymbols code,int value) + { + if (!emitting) return; + outputStream.Write((int)code); + outputStream.Write(value); + if(Debug)logger.Info(Scanner.SymbolToString(code)+","+value.ToString()); + } + public void Emit(Scanner.ScanSymbols code,double value) + { + if (!emitting) return; + outputStream.Write((int)code); + outputStream.Write(value); + if(Debug)logger.Info(Scanner.SymbolToString(code)+","+value.ToString()); + } + public void Emit(Scanner.ScanSymbols code,String value) + { + if (!emitting) return; + outputStream.Write((int)code); + outputStream.Write(value); + if(Debug)logger.Info(Scanner.SymbolToString(code)+","+value.ToString()); + } +// ********************************************************************************************************************************************** + public long CodePointer() + { + return outputStream.BaseStream.Position; + } + public void Seek(long position) + { + outputStream.BaseStream.Seek(position, SeekOrigin.Begin); + } + public void Emit(Parser.ParserSymbols code) + { + if (!emitting) return; + long positionBefore=outputStream.BaseStream.Position; + outputStream.Write((int)code); + long positionAfter=outputStream.BaseStream.Position; + if(Debug)logger.Info(Parser.SymbolToString(code)+"["+positionBefore+","+positionAfter+"]"); + + } + public void Emit(Parser.ParserSymbols code,Object value) + { + if (!emitting) return; + long positionBefore=outputStream.BaseStream.Position; + outputStream.Write((int)code); + Type type = value.GetType(); + outputStream.Write(type.ToString()); + outputStream.Write(value.ToString()); + long positionAfter=outputStream.BaseStream.Position; + if(Debug)logger.Info(Parser.SymbolToString(code)+","+type.ToString()+","+value.ToString()+"["+positionBefore+","+positionAfter+"]"); + } + public void Emit(Parser.ParserSymbols code,Object value,int intValue) + { + if (!emitting) return; + long positionBefore=outputStream.BaseStream.Position; + outputStream.Write((int)code); + Type type = value.GetType(); + outputStream.Write(type.ToString()); + outputStream.Write(value.ToString()); + outputStream.Write(intValue); + long positionAfter=outputStream.BaseStream.Position; + if(Debug)logger.Info(Parser.SymbolToString(code)+","+type.ToString()+","+value.ToString()+","+intValue+"["+positionBefore+","+positionAfter+"]"); + } + public void Emit(Parser.ParserSymbols code,long value) + { + if (!emitting) return; + long positionBefore=outputStream.BaseStream.Position; + outputStream.Write((int)code); + outputStream.Write(value); + long positionAfter=outputStream.BaseStream.Position; + if(Debug)logger.Info(Parser.SymbolToString(code)+","+value.ToString()+","+value.ToString()+"["+positionBefore+","+positionAfter+"]"); + } + public void EmitAsNull(Parser.ParserSymbols code) + { + if (!emitting) return; + long positionBefore=outputStream.BaseStream.Position; + outputStream.Write((int)code); + Type type = typeof(System.Nullable); //value.GetType(); + outputStream.Write(type.ToString()); + outputStream.Write("null".ToString()); + long positionAfter=outputStream.BaseStream.Position; + if(Debug)logger.Info(Parser.SymbolToString(code)+","+type.ToString()+","+"null".ToString()+"["+positionBefore+","+positionAfter+"]"); + } +// ************************************************************************ + public void Emit(int code, int op) + { + if (!emitting) return; + outputStream.Write(code); + outputStream.Write(op); + } + public void Emit(int identifier) + { + if (!emitting) return; + outputStream.Write(identifier); + } + public void Emit(byte value) + { + if (!emitting) return; + outputStream.Write(value); + } + public int Peek(ref int value) + { + value = inputStream.PeekChar(); + return value; + } + public int Peek() + { + int value = inputStream.PeekChar(); + return value; + } + + public int PeekIgnore(ref int value,int[] ignoreChars) + { + long streamPosition=inputStream.BaseStream.Position; + while(true) + { + int readValue; + readValue=(int)inputStream.ReadChar(); + value=readValue; + if(!ignoreChars.Any(x=>x.Equals(readValue)))break; + } + inputStream.BaseStream.Seek(streamPosition,SeekOrigin.Begin); + return value; + } + public int Read() + { + lastSymbol = inputStream.Read(); + return lastSymbol; + } + public int Read(ref String literal) + { + literal=inputStream.ReadString(); + return 0; + } + public int Read(ref byte value) + { + try { value = inputStream.ReadByte(); return 0; } + catch (EndOfStreamException) { return 0xFFFF; } + } + public int Read(ref int value) + { + try { value = inputStream.ReadInt32(); return 0; } + catch (EndOfStreamException) { return 0xFFFF; } + + } + public int Read(ref double value) + { + try { value = inputStream.ReadDouble(); return 0; } + catch (EndOfStreamException) { return 0xFFFF; } + } + public bool Emitting + { + get + { + return emitting; + } + set + { + emitting = value; + } + } + } +} diff --git a/Axiom.Core/Interpreter/GenericData.cs b/Axiom.Core/Interpreter/GenericData.cs new file mode 100644 index 0000000..5eb916e --- /dev/null +++ b/Axiom.Core/Interpreter/GenericData.cs @@ -0,0 +1,713 @@ +using System; +using System.Text; +using log4net; +using MarketData.DataAccess; +using MarketData.MarketDataModel; +using System.Diagnostics; +using Axiom.Utils; + +// FileName : GenericData.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class GenericData + { + private static ILog logger = LogManager.GetLogger(typeof(GenericData)); + private Object objData = null; + private String objDataType = ""; + private bool isModified=false; + + public Object Data + { + set + { + objData = value; + if(null!=objData)objDataType =objData.GetType().ToString(); + } + get + { + return objData; + } + } + public bool IsNull() + { + return null == objData ? true : false; + } + public bool IsModified + { + get {return isModified;} + set {isModified=value;} + } + public static GenericData PerformConvert(GenericData data1, GenericData data2) // convert data of param1 to the type described in data2 + { + GenericData genericData = new GenericData(); + genericData.SetData(data1.GetStringRepData(),data2.Get()); + return genericData; + } + public GenericData GetPrice(GenericData dateData,GenericData opData) + { + GenericData resultData = new GenericData(); + double result=default(double); + try + { + String strSymbol=this.Get(); + DateTime date = dateData.Get(); + Price price=PricingDA.GetPrice(strSymbol,date); + if(null != price) + { + String strOperation=opData.Get().ToUpper(); + if(strOperation.Equals("OPEN"))result = price.Open; + else if(strOperation.Equals("HIGH"))result = price.High; + else if(strOperation.Equals("LOW"))result = price.Low; + else result = price.Close; + } + } + catch (Exception exception) + { + Debug.WriteLine(exception.ToString()); + } + resultData.SetData(result); + return resultData; + } + public GenericData Substring(GenericData startIndexData,GenericData lengthData) + { + GenericData resultData = new GenericData(); + String result = null; + try + { + int startIndex = startIndexData.Get(); + int length = lengthData.Get(); + String strArgument = this.Get(); + result = strArgument.Substring(startIndex - 1, length); + } + catch (Exception) + { + } + resultData.SetData(result); + return resultData; + } + public GenericData Trim() + { + GenericData resultData = new GenericData(); + String result = null; + try + { + String strArgument = this.Get(); + result = strArgument.Trim(); + } + catch (Exception) + { + } + resultData.SetData(result); + return resultData; + } + public GenericData Upper() + { + GenericData resultData = new GenericData(); + String result = null; + try + { + String strArgument = this.Get(); + result = strArgument.ToUpper(); + } + catch (Exception) + { + } + resultData.SetData(result); + return resultData; + } + public GenericData Lower() + { + GenericData resultData = new GenericData(); + String result = null; + try + { + String strArgument = this.Get(); + result = strArgument.ToLower(); + } + catch (Exception) + { + } + resultData.SetData(result); + return resultData; + } + public GenericData Like(GenericData argument) + { + GenericData genericData = new GenericData(); + String thisString = this.Get(); + String strArgument = argument.GetStringRepData(); + if (null == thisString || null == strArgument) + { + genericData.SetData(false); + return genericData; + } + strArgument = strArgument.Replace("%", null); + genericData.SetData(thisString.Contains(strArgument)); + return genericData; + } + public void SetNull() + { + objDataType="System.Nullable"; + objData=Convert.ChangeType(null,Type.GetType(objDataType)); + } + public void SetNull(String strDataType) + { + objDataType=GetTypeString(strDataType); + objData=Convert.ChangeType(null,Type.GetType(objDataType)); + } + public void SetData(double data) + { + Type targetType = data.GetType(); + objDataType = targetType.Name; + objData = data; + } + public void SetData(bool data) + { + Type targetType = data.GetType(); + objDataType = targetType.Name; + objData = data; + } + public void SetData(String data) + { + Type targetType = data.GetType(); + objDataType = targetType.Name; + objData = data; + } + public void SetData(String stringRep, String typeName) + { + Type targetType = Type.GetType(typeName); + objDataType = typeName; + objData = Convert.ChangeType(stringRep, targetType); + } + public static GenericData Clone(GenericData genericData) + { + GenericData copyGenericData = new GenericData(); + if (null == genericData) return copyGenericData; + copyGenericData.SetData(genericData.GetStringRepData(),genericData.GetStringRepType()); + return copyGenericData; + } +// ************************************************************************************************************************************************************************************* +// *********************************************************************************** L O G I C A L O P E R A T I O N S ************************************************************* +// ************************************************************************************************************************************************************************************* + public GenericData Not() + { + GenericData data = new GenericData(); + String stringRepType = GetStringRepType(); + + if (IsNull()) + { + data.SetNull(); + } + else if ("System.Boolean".Equals(stringRepType)) + { + data.Data=!(Get()); + } + else if ("System.Int32".Equals(stringRepType)) + { + data.Data = (Get() == 0); + } + else if ("System.String".Equals(stringRepType)) + { + data.Data = !(Get()); + } + else if ("System.Double".Equals(stringRepType)) + { + data.Data = (Get() == 0.00); + } + else data.SetNull(); + return data; + } + public GenericData LessEqual(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()<=genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()<=genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = Get().Length<=genericData.Get().Length; + } + else data.SetNull(); + return data; + } + public GenericData Or(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = (0.00!=Get())||(0.00!=genericData.Get()); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = (0!=Get())||(0!=genericData.Get()); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Boolean".Equals(genericData.GetStringRepType())) + { + data.Data = Get()||genericData.Get(); + } + else data.SetNull(); + return data; + } + public GenericData And(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = (0.00 != Get()) && (0.00 != genericData.Get()); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = (0 != Get()) && (0 != genericData.Get()); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Boolean".Equals(genericData.GetStringRepType())) + { + data.Data = Get() && genericData.Get(); + } + else data.SetNull(); + return data; + } + public GenericData Greater(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()>genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.DateTime".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()>genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()>genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = Get().Length>genericData.Get().Length; + } + else data.SetNull(); + return data; + } + public GenericData GreaterEqual(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()>=genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try + { + data.Data = Get()>=genericData.Get(); + } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = Get().Length>=genericData.Get().Length; + } + else data.SetNull(); + return data; + } + public GenericData EqualEqual(GenericData genericData) + { + GenericData data = new GenericData(); + + if (IsNull() && genericData.IsNull()) + { + data.SetData(true); + } + else if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try { data.Data = (0 == Get().CompareTo(genericData.Get())); } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try { data.Data = (0 == Get().CompareTo(genericData.Get())); } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = (Get().Equals(genericData.Get())); + } + else data.SetNull(); + return data; + } + public GenericData NotEqual(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull() && !genericData.IsNull()) + { + data.SetData(true); + } + else if (!IsNull() && genericData.IsNull()) + { + data.SetData(true); + } + else if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try { data.Data = (0 != Get().CompareTo(genericData.Get())); } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try { data.Data = (0 != Get().CompareTo(genericData.Get())); } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = !(Get().Equals(genericData.Get())); + } + else data.SetNull(); + return data; + } + public GenericData Less(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetData(false); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try { data.Data = (-1==Get().CompareTo(genericData.Get())); } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try { data.Data = (-1==Get().CompareTo(genericData.Get())); } + catch (Exception) { data.Data = 0.00; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = Get().Equals(genericData.Get()); + } + else data.SetNull(); + return data; + } + // ************************************************************************************************************************************************************************************** + // ********************************************************************************** M A T H E M A T I C A L O P E R A T I O N S **************************************************** + // ************************************************************************************************************************************************************************************** + public GenericData Negate() + { + GenericData data = new GenericData(); + String stringRepType = GetStringRepType(); + + if (IsNull()) + { + data.SetNull(); + } + else if ("System.Double".Equals(stringRepType)) + { + try + { + data.Data = Get() * -1.00; + } + catch (Exception) { data.Data = 0.00; } + } + else + { + try + { + data.Data = Get() * -1; + } + catch (Exception){data.SetNull();} + } + return data; + } + public GenericData Abs() + { + GenericData data = new GenericData(); + String stringRepType = GetStringRepType(); + if (IsNull()) + { + data.SetNull(); + } + if ("System.Double".Equals(stringRepType)) + { + try + { + data.Data = Math.Abs(Get()); + } + catch (Exception) { data.Data = 0.00; } + } + else + { + try + { + data.Data = Math.Abs(Get()); + } + catch (Exception) + { + data.SetNull(); + } + } + return data; + } + + public GenericData Multiply(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetNull(); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try { data.Data = Get() * genericData.Get(); } + catch (Exception) { data.Data = double.NaN; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try { data.Data = Get() * genericData.Get(); } + catch (Exception) { data.Data = Int32.MinValue; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + try { data.Data = Get() * genericData.Get(); } // genericData is a string but try to cast and perform the multiplication anyway + catch (Exception) { data.Data = double.NaN; } + } + else data.SetNull(); + return data; + } + public GenericData Divide(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetNull(); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + try { data.Data = Get() / genericData.Get(); } + catch (Exception) { data.Data = double.NaN; } + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + try { data.Data = Get() / genericData.Get(); } + catch (Exception) { data.Data = Int32.MinValue; } + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = double.NaN; + } + else data.SetNull(); + return data; + } + public GenericData Add(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetNull(); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + data.Data = Get()+genericData.Get(); + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + data.Data = Get()+genericData.Get(); + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = Get() + genericData.Get(); + } + else data.SetNull(); + return data; + } + public GenericData Subtract(GenericData genericData) + { + GenericData data = new GenericData(); + if (IsNull()) + { + data.SetNull(); + } + else if ("System.Double".Equals(genericData.GetStringRepType())) + { + data.Data = Get() - genericData.Get(); + } + else if ("System.Int32".Equals(genericData.GetStringRepType())) + { + data.Data = Get() - genericData.Get(); + } + else if ("System.String".Equals(genericData.GetStringRepType())) + { + data.Data = (Get()).Replace(genericData.Get(), null); + } + else data.SetNull(); + return data; + } +// ********************************************************************************************************** E N D O P E R A T I O N S ******************************************************************************************** + public String GetStringRepData() + { + if (null == objData) return null; + String stringRepType = GetStringRepType(); + return (String)Convert.ChangeType(objData, typeof(String)); + } + public String GetStringRepType() + { + if (null == objData) return "System.Nullable"; + return objData.GetType().ToString(); + } + public Type DataType + { + get + { + if (null == objData) throw new Exception("No type data for null value."); + return objData.GetType(); + } + } + public override String ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append(GetStringRepType()).Append(":").Append("'").Append(GetStringRepData()).Append("'"); + return sb.ToString(); + } + public T Get() + { + T result = default(T); + try + { + result = (T)Convert.ChangeType(objData, typeof(T)); + } + catch(Exception /*exception*/) + { + result = default(T); + } + return result; + } +// ********************************************************************************************************************************************************************************** +// ************************************************************************ P U B L I C S T A T I C H E L P E R S **************************************************************** +// ********************************************************************************************************************************************************************************** + public static Object ConvertType(String destinationType,String stringRep) + { + try + { + if (destinationType.Equals("System.DBNull")) destinationType = "System.String"; + Type targetType = Type.GetType(destinationType); + String objDataType = destinationType; + Object objData = Convert.ChangeType(stringRep, targetType); + return objData; + } + catch(Exception /*exception*/) + { + return null; + } + } + public static Object ConvertType(Type targetType,String stringRep) + { + try + { + Object objData = null; + String stringRepType = targetType.ToString(); + if(targetType.Equals("System.Double")&&null==stringRep||stringRep.Equals(""))return objData; + else if (stringRepType.Equals("System.DBNull")) stringRep = "System.String"; + objData = Convert.ChangeType(stringRep, targetType); + return objData; + } + catch(Exception /*exception*/) + { + return null; + } + } + public static Type GetType(String strType) + { + strType=strType.ToUpper(); + if(strType.Equals("STRING")||strType.Equals("SYSTEM.STRING"))return Type.GetType("System.String"); + else if(strType.Equals("NUMERIC")||strType.Equals("DOUBLE")||strType.Equals("SYSTEM.DOUBLE"))return Type.GetType("System.Double"); + else if(strType.Equals("DATETIME")||strType.Equals("SYSTEM.DATETIME"))return Type.GetType("System.DateTime"); + return Type.GetType("System.String"); + } + public static String GetTypeString(String strType) + { + strType=strType.ToUpper(); + if(strType.Equals("STRING")||strType.Equals("SYSTEM.STRING"))return "System.String"; + else if(strType.Equals("NUMERIC")||strType.Equals("DOUBLE")||strType.Equals("SYSTEM.DOUBLE"))return "System.Double"; + else if(strType.Equals("DATETIME")||strType.Equals("SYSTEM.DATETIME"))return "System.DateTime"; + return "System.String"; + } + public static String ToExpressionData(System.Data.DataColumn dataColumn,String value) + { + if (dataColumn.DataType.Name.ToUpper().Equals("STRING")) return "'"+Utility.SqlString(value)+"'"; + if (dataColumn.DataType.Name.ToUpper().Equals("DATETIME")) return "'"+Utility.SqlString(value)+"'"; + return value; + } + } +} diff --git a/Axiom.Core/Interpreter/ParseSymbols.cs b/Axiom.Core/Interpreter/ParseSymbols.cs new file mode 100644 index 0000000..0050e32 --- /dev/null +++ b/Axiom.Core/Interpreter/ParseSymbols.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +// FileName : ParseSymbols.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class ParseSymbols : List + { + private Dictionary uniqueSymbols = new Dictionary(); + + public ParseSymbols() + { + } + public ParseSymbols(List symbols) + { + foreach (ParseSymbol symbol in symbols) InsertSymbols(symbol); + } + public new void Add(ParseSymbol parseSymbol) + { + InsertSymbols(parseSymbol); + } + public void InsertSymbols(ParseSymbols symbols) + { + foreach (ParseSymbol parseSymbol in symbols) + { + base.Add(parseSymbol); + if (!uniqueSymbols.ContainsKey(parseSymbol.Symbol)) uniqueSymbols.Add(parseSymbol.Symbol,parseSymbol.Symbol); + } + } + public void InsertSymbols(ParseSymbol parseSymbol) + { + base.Add(parseSymbol); + if (!uniqueSymbols.ContainsKey(parseSymbol.Symbol)) uniqueSymbols.Add(parseSymbol.Symbol,parseSymbol.Symbol); + } + public void RemoveSymbols(ParseSymbols symbols) + { + for (int index = symbols.Count - 1; index >= 0;index--) + { + ParseSymbol symbol = symbols[index]; + base.Remove(symbol); + int count = (from ParseSymbol parseSymbol in this where parseSymbol.Symbol.Equals(symbol.Symbol) select parseSymbol).Count(); + if (0 == count && uniqueSymbols.ContainsKey(symbol.Symbol)) uniqueSymbols.Remove(symbol.Symbol); + } + } + public void RemoveSymbols(ParseSymbol symbol) + { + base.Remove(symbol); + int count = (from ParseSymbol parseSymbol in this where parseSymbol.Symbol.Equals(symbol.Symbol) select parseSymbol).Count(); + if(0==count&&uniqueSymbols.ContainsKey(symbol.Symbol))uniqueSymbols.Remove(symbol.Symbol); + } + public bool SymbolIn(Scanner.ScanSymbols symbol) + { + return uniqueSymbols.ContainsKey(symbol); + } + public bool SymbolIn(ParseSymbols parseSymbols) + { + foreach (ParseSymbol symbol in parseSymbols) if (uniqueSymbols.ContainsKey(symbol.Symbol)) return true; + return false; + } + public bool SymbolIn(ParseSymbol parseSymbol) + { + return uniqueSymbols.ContainsKey(parseSymbol.Symbol); + } + } + public class ParseSymbol : IEquatable + { + private Scanner.ScanSymbols symbol; + public ParseSymbol() + { + } + public ParseSymbol(Scanner.ScanSymbols symbol) + { + this.symbol = symbol; + } + public Scanner.ScanSymbols Symbol + { + get + { + return symbol; + } + } + public bool Equals(ParseSymbol parseSymbol) + { + if (parseSymbol == null) return false; + return Symbol.Equals(parseSymbol.Symbol); + } + } +} diff --git a/Axiom.Core/Interpreter/Parser.cs b/Axiom.Core/Interpreter/Parser.cs new file mode 100644 index 0000000..e4ec75d --- /dev/null +++ b/Axiom.Core/Interpreter/Parser.cs @@ -0,0 +1,1748 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.IO; + +// FileName : Parser.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class Parser : Emitter + { + public enum ParserSymbols { undefined2, directive_clear_modified2, declare2, do2, defaddr2, goto2, add2, subtract2, multiply2, divide2, assign2, negate2, less2, lessequal2, greater2, greaterequal2, equalequal2, notequal2, variableaccess2, call2, push2, not2, codeend2, oror2, andand2, noop2 }; + public enum ErrorCodes{DivideByZero}; + private SymbolTable symbolTable; + private ParseSymbols directiveSymbols = new ParseSymbols(); + private ParseSymbols assignmentStatementSymbols = new ParseSymbols(); + private ParseSymbols statementSymbols = new ParseSymbols(); + private ParseSymbols simpleExpressionSymbols = new ParseSymbols(); + private ParseSymbols mathSymbols = new ParseSymbols(); + private ParseSymbols termSymbols = new ParseSymbols(); + private ParseSymbols factorSymbols = new ParseSymbols(); + private ParseSymbols addSymbols = new ParseSymbols(); + private ParseSymbols signSymbols = new ParseSymbols(); + private ParseSymbols expressionSymbols = new ParseSymbols(); + private ParseSymbols parseSymbols = new ParseSymbols(); + private ParseSymbols relationSymbols = new ParseSymbols(); + private ParseSymbols logicalSymbols = new ParseSymbols(); + private ParseSymbols declarationSymbols = new ParseSymbols(); + private ParseSymbols mathFunctionSymbols = new ParseSymbols(); + private ParseSymbols stringManipulationSymbols = new ParseSymbols(); + private Scanner.ScanSymbols currentSymbolType; + private double numeralValue; + private String stringValue; + private bool strictStatementMode=false; // is StrictStatementMode is true then the parser will return an error if there is not at least one statement processed. + private Stack breakStack = new Stack(); // when we encounter a break statement we need to record the address of the code pointer + private Stack whileStack = new Stack(); // when we encounter a while statement we need to record the event so that we can validate any break statements + + public Parser(BinaryReader binaryReader, BinaryWriter binaryWriter, SymbolTable symbolTable) + : base(binaryReader, binaryWriter) + { + this.symbolTable = symbolTable; + currentSymbolType = Scanner.ScanSymbols.unknown1; + CreateDeclarationSymbols(); + CreateAssignmentStatementSymbols(); + CreateStatementSymbols(); + CreateSimpleExpressionSymbols(); + CreateMathSymbols(); + CreateTermSymbols(); + CreateFactorSymbols(); + CreateAddSymbols(); + CreateSignSymbols(); + CreateExpressionSymbols(); + CreateRelationSymbols(); + CreateFunctionSymbols(); + CreateLogicalSymbols(); + CreateMathFunctionSymbols(); + CreateStringManipulationSymbols(); + IsInError = false; + LineNumber = 0; + LastLineNumber = 0; + SymbolNumber = -1; + LastSymbolNumber = -1; + StatementNumber = 0; + LastStatementNumber = 0; + LastMessage = ""; + } + public bool Parse(bool includeCodeEnd=true) + { + NextSymbol(); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.endtext1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.directive_clear_modified1)); + while (!(Scanner.ScanSymbols.endtext1.Equals(currentSymbolType)) && !IsInError) Statement(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.endtext1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.directive_clear_modified1)); + if(includeCodeEnd)Emit(Parser.ParserSymbols.codeend2); + if(StrictStatementMode && 0==StatementNumber)SyntaxError("The input document does not contain any valid statements."); + if (IsInError) return false; + if(Debug) + { + if (parseSymbols.Count != 0) Console.WriteLine("ParseSymbols is not empty."); + else Console.WriteLine("ParseSymbols, all symbols cleared from stack."); + } + return !IsInError; + } + public bool StrictStatementMode + { + get { return strictStatementMode; } + set{strictStatementMode=value;} + } + public int ParseSymbolsCount + { + get{return parseSymbols.Count;} + } + public int GetParseSymbolsCount() + { + return parseSymbols.Count; + } + public void Statement() + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.semicolon1)); + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.directive_clear_modified1))) + { + DirectiveClearModified(); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.declare1))) + { + DeclarationStatement(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.label1))) + { + SyntaxError(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + ParseLiteral(); + } + else if (Scanner.ScanSymbols.variable1.Equals(currentSymbolType)) + { + bool assignmentStatement = PeekSymbol(new ParseSymbol(Scanner.ScanSymbols.equal1)); + VariableAccess(); + if(assignmentStatement) + { + AssignmentStatement(); + StatementNumber++; + } + } + else if (Scanner.ScanSymbols.if1.Equals(currentSymbolType)) + { + IfStatement(); + StatementNumber++; + } + else if(Scanner.ScanSymbols.break1.Equals(currentSymbolType)) + { + BreakStatement(); + StatementNumber++; + } + else if (Scanner.ScanSymbols.while1.Equals(currentSymbolType)) + { + WhileStatement(); + StatementNumber++; + } + else if (SymbolIn(termSymbols)) + { + Term(); + } + else SyntaxCheck(); + + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.endtext1)); + InsertSymbols(statementSymbols); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.semicolon1))) + { + Expect(Scanner.ScanSymbols.semicolon1); + } + RemoveSymbols(statementSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.semicolon1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.endtext1)); + return; + } + public void DeclarationStatement() + { + bool moreDeclarations = true; + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.declare1); + SyntaxCheck(); + while(moreDeclarations) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Expect(Scanner.ScanSymbols.variable1); + Emit(Parser.ParserSymbols.declare2, stringValue); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.comma1))) + { + Expect(Scanner.ScanSymbols.comma1); + SyntaxCheck(); + } + else moreDeclarations = false; + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + } + public void DirectiveClearModified() + { + Emit(Parser.ParserSymbols.directive_clear_modified2); + Expect(Scanner.ScanSymbols.directive_clear_modified1); + } + public void ParseLiteral() + { + Emit(Parser.ParserSymbols.push2, stringValue); + Expect(Scanner.ScanSymbols.literal1); + } + public void BreakStatement() + { + if(0.Equals(whileStack.Count)) + { + SyntaxError("Encountered 'break' without 'while'"); + } + breakStack.Push(CodePointer()); + Expect(Scanner.ScanSymbols.break1); + } + /// + /// WhileStatement Parses WhileStatement. + ///WHILE + ///L1: B // + /// Do(L2) // Here we branch L2 when the condition is False + /// S + /// Goto(L1) // Goto L1 and re-evaluate + ///L2 + /// + public void WhileStatement() + { + long codePointerFalseInstructionAddress; + long codePointerL1; + long codePointerL2; + long codePointerTerminalAddress; + + whileStack.Push(true); // Register that we are processing a while loop + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.while1); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + if (IsInError){whileStack.Pop(); return;} + codePointerL1 = CodePointer(); // L1: + DoBForWhile(); // B + if(IsInError){whileStack.Pop(); return;} + codePointerFalseInstructionAddress = CodePointer(); // Record the location of the DEFADDR2 instruction. + Emit(Parser.ParserSymbols.defaddr2,0L); // Write DEFADDR2,0L. This will be jump to condition:false + DoSForWhile(); // S + if(IsInError){whileStack.Pop(); return;} + Emit(Parser.ParserSymbols.goto2,codePointerL1); // Goto(L1) + codePointerL2=CodePointer(); // L2: + Emit(Parser.ParserSymbols.noop2); // Don't write any instructions past this point + codePointerTerminalAddress=CodePointer(); // Record code pointer before seeking + Seek(codePointerFalseInstructionAddress); // Seek to DEFADDR2 instruction + Emit(Parser.ParserSymbols.defaddr2,codePointerL2); // Write DEFADDR2, L2 + HandleBreak(codePointerL2); // If there was a break statement then handle to jump condition + Seek(codePointerTerminalAddress); + } + public void HandleBreak(long codePointerL2) + { + if(0==breakStack.Count)return; + Seek(breakStack.Pop()); + Emit(Parser.ParserSymbols.goto2,codePointerL2); + + } + /// + /// B Section for While. + /// + public void DoBForWhile() + { + Stack logicalOperatorStack = new Stack(); + while (!IsInError) + { + bool inShortFunction = false; + InsertSymbols(expressionSymbols); + if (PeekSymbolIn(directiveSymbols)) inShortFunction = true; + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(logicalSymbols); + Expression(); + Relation(); + InsertSymbols(relationSymbols); + SyntaxCheck(); + if (IsInError) return; + RemoveSymbols(relationSymbols); + RemoveSymbols(logicalSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightparen1)) + && !PeekSymbol(new ParseSymbol(Scanner.ScanSymbols.leftcurly1))) + { + RemoveSymbols(expressionSymbols); + break; + } + if (inShortFunction||SymbolIn(logicalSymbols)) + { + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.oror1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.oror2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(expressionSymbols); // yes do this twice + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.andand1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.andand2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(expressionSymbols); // yes do this twice + RemoveSymbols(directiveSymbols); + continue; + } + } + ParseSymbol relationSymbol = new ParseSymbol(currentSymbolType); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); // going to handle while(){stmt;stmt;} and while()stmt; + InsertSymbols(logicalSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + if (!inShortFunction) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + if (SymbolIn(directiveSymbols)) + { + InsertSymbols(relationSymbols); + Directive(); + Relation(); + RemoveSymbols(relationSymbols); + } + else + { + Statement(); + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightparen1))) Expect(Scanner.ScanSymbols.rightparen1); + if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.notequal1))) + { + Emit(Parser.ParserSymbols.notequal2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.equalequal1))) + { + Emit(Parser.ParserSymbols.equalequal2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.less1))) + { + Emit(Parser.ParserSymbols.less2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.lessequal1))) + { + Emit(Parser.ParserSymbols.lessequal2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.greater1))) + { + Emit(Parser.ParserSymbols.greater2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.greaterequal1))) + { + Emit(Parser.ParserSymbols.greaterequal2); + } + } + if (0 != logicalOperatorStack.Count) Emit(logicalOperatorStack.Pop()); + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.oror1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.oror2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.andand1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.andand2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + } + RemoveSymbols(logicalSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); + RemoveSymbols(expressionSymbols); + if (!SymbolIn(expressionSymbols)&&!SymbolIn(directiveSymbols)) break; + } // while we continue to have logical expressions and we have no errors + if (0 != logicalOperatorStack.Count) Emit(logicalOperatorStack.Pop()); + } + /// + /// S Section for While. + /// + public void DoSForWhile() + { + InsertSymbols(statementSymbols); + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightparen1))) + { + Expect(Scanner.ScanSymbols.rightparen1); + Statement(); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.leftcurly1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightcurly1)); + Expect(Scanner.ScanSymbols.leftcurly1); + while (!IsInError) + { + Statement(); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightcurly1))) + { + Expect(Scanner.ScanSymbols.rightcurly1); + break; + } + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightcurly1)); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.semicolon1))) + { + Expect(Scanner.ScanSymbols.semicolon1); + } + else SyntaxError(); + RemoveSymbols(statementSymbols); + } +// ************************************************************************************************************************************** + /// + /// IfStatement. + ///if B then S1 else S2 + /// + /// B + /// Do(L1) // Here we branch when the condition is False + /// S1 + /// Goto(L2) // Here we branch unconditionally + ///L1: S2 + ///L2: + /// + public void IfStatement() + { + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.if1); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + if(IsInError)return; + DoBForIf(); + if(IsInError)return; + DoSForIf(); + } + + public void DoBForIf() + { + Stack logicalOperatorStack = new Stack(); + while (!IsInError) + { + bool inShortFunction = false; + InsertSymbols(expressionSymbols); + if (PeekSymbolIn(directiveSymbols)) inShortFunction = true; + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(logicalSymbols); + Expression(); + Relation(); + InsertSymbols(relationSymbols); + SyntaxCheck(); + if (IsInError) return; + RemoveSymbols(relationSymbols); + RemoveSymbols(logicalSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + if (inShortFunction||SymbolIn(logicalSymbols)) + { + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.oror1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.oror2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(expressionSymbols); // yes do this twice + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.andand1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.andand2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(expressionSymbols); // yes do this twice + RemoveSymbols(directiveSymbols); + continue; + } + } + ParseSymbol relationSymbol = new ParseSymbol(currentSymbolType); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.then1)); // going to handle if() then stmt; else stmt; + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); // going to handle if(){stmt;stmt;}else{stmt;stmt;} + InsertSymbols(logicalSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + if (!inShortFunction) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + if (SymbolIn(directiveSymbols)) + { + InsertSymbols(relationSymbols); + Directive(); + Relation(); + RemoveSymbols(relationSymbols); + } + else + { + Statement(); + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightparen1))) Expect(Scanner.ScanSymbols.rightparen1); + if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.notequal1))) + { + Emit(Parser.ParserSymbols.notequal2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.equalequal1))) + { + Emit(Parser.ParserSymbols.equalequal2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.less1))) + { + Emit(Parser.ParserSymbols.less2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.lessequal1))) + { + Emit(Parser.ParserSymbols.lessequal2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.greater1))) + { + Emit(Parser.ParserSymbols.greater2); + } + else if (relationSymbol.Equals(new ParseSymbol(Scanner.ScanSymbols.greaterequal1))) + { + Emit(Parser.ParserSymbols.greaterequal2); + } + } + if (0 != logicalOperatorStack.Count) Emit(logicalOperatorStack.Pop()); + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.oror1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.oror2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.andand1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.andand2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + } + RemoveSymbols(logicalSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.then1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); + RemoveSymbols(expressionSymbols); + if (!SymbolIn(expressionSymbols)&&!SymbolIn(directiveSymbols)) break; + } // while we continue to have logical expressions and we have no errors + if (0 != logicalOperatorStack.Count) Emit(logicalOperatorStack.Pop()); + } + public void DoSForIf() + { + bool containsElse=true; + long codePointerFalseInstructionAddress=0; + long codePointerFalseGotoTarget=0; + long codePointerTrueInstructionAddress=0; + long codePointerTrueGotoTarget=0; + long codePointerTerminalAddress=0; + + #region DO(L1) + codePointerFalseInstructionAddress = CodePointer(); // Do(L1) False. Get the address of where I am going to write the next instruction + Emit(Parser.ParserSymbols.defaddr2,0L); // write the next instruction with a zero. It will be filled in later with a valid address. This will be jump to condition:false + #endregion + #region S1 + InsertSymbols(statementSymbols); + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.then1))) + { + Expect(Scanner.ScanSymbols.then1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.else1)); + Statement(); // after this statement we need to jump to the end + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.leftcurly1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightcurly1)); + Expect(Scanner.ScanSymbols.leftcurly1); + while (!IsInError) + { + Statement(); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightcurly1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.else1)); + Expect(Scanner.ScanSymbols.rightcurly1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.else1)); + break; + } + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightcurly1)); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.semicolon1))) + { + Expect(Scanner.ScanSymbols.semicolon1); + } + else SyntaxError(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.else1)); + #endregion + #region GOTO(L2) + codePointerTrueInstructionAddress = CodePointer(); + Emit(Parser.ParserSymbols.goto2,0L); + #endregion + #region L1:S2 + codePointerFalseGotoTarget = CodePointer(); // This is where instructions start for the false condition + Seek(codePointerFalseInstructionAddress); + Emit(Parser.ParserSymbols.defaddr2,codePointerFalseGotoTarget); + Seek(codePointerFalseGotoTarget); + if(!SymbolIn(new ParseSymbol(Scanner.ScanSymbols.else1)))containsElse=false; + if(containsElse) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); + Expect(Scanner.ScanSymbols.else1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.leftcurly1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightcurly1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); + InsertSymbols(statementSymbols); + Expect(Scanner.ScanSymbols.leftcurly1); + RemoveSymbols(statementSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftcurly1)); + while (!IsInError) + { + Statement(); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightcurly1))) + { + Expect(Scanner.ScanSymbols.rightcurly1); + break; + } + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightcurly1)); + } + else + { + Statement(); + } + } + #endregion + #region L2 + codePointerTrueGotoTarget=CodePointer(); + Emit(Parser.ParserSymbols.noop2); + codePointerTerminalAddress = CodePointer(); + Seek(codePointerTrueInstructionAddress); + Emit(Parser.ParserSymbols.goto2,codePointerTrueGotoTarget); + Seek(codePointerTerminalAddress); + RemoveSymbols(statementSymbols); + #endregion + } +// ************************************************************************************************************** + public void Relation() + { + Stack logicalOperatorStack = new Stack(); + if (!SymbolIn(relationSymbols)) return; + while (!IsInError) + { + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.equalequal1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.equalequal2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.notequal1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.notequal2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.less1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.less2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.lessequal1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.lessequal2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.greater1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.greater2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.greaterequal1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.greaterequal2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.oror1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.oror2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.andand1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.andand2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.less1))) + { + logicalOperatorStack.Push(Parser.ParserSymbols.less2); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + continue; + } + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Term(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + ParseSymbol relationSymbol = new ParseSymbol(currentSymbolType); + if (0 != logicalOperatorStack.Count) Emit(logicalOperatorStack.Pop()); + if (!SymbolIn(relationSymbols)&&!SymbolIn(logicalSymbols)) break; + } // while true + if (0 != logicalOperatorStack.Count) Emit(logicalOperatorStack.Pop()); + } + public void AssignmentStatement() + { + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.equal1); + if (IsInError) return; + RemoveSymbols(directiveSymbols); + RemoveSymbols(expressionSymbols); + if (SymbolIn(expressionSymbols)) + { + Expression(); + Emit(Parser.ParserSymbols.assign2); + } + else if (SymbolIn(directiveSymbols)) + { + RemoveSymbols(directiveSymbols); + RemoveSymbols(expressionSymbols); + Directive(); + if (SymbolIn(expressionSymbols)) + { + while (SymbolIn(expressionSymbols)) + { + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expression(); + RemoveSymbols(directiveSymbols); + RemoveSymbols(expressionSymbols); + } + } + else if (SymbolIn(mathSymbols)) + { + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + SimpleTerm(); + RemoveSymbols(expressionSymbols); + RemoveSymbols(directiveSymbols); + } + Emit(Parser.ParserSymbols.assign2); + } + else SyntaxError(); + } + public void VariableAccess() + { + Emit(Parser.ParserSymbols.variableaccess2,stringValue); + NextSymbol(); + } +// ******************************************************************************************************************************************************************************************************************************************************************* +// ************************************************************************************************************ B U I L T - I N F U N C T I O N S ****************************************************************************************************************** +// ******************************************************************************************************************************************************************************************************************************************************************* + public void Directive() + { + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.abs1))) ParseABS(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.pow1))) ParsePOW(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.sqrt1))) ParseSQRT(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.convert1))) ParseConvert(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.substring1))) ParseSubstring(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.getprice1))) ParseGetPrice(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.in1))) ParseIn(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.like1))) ParseLike(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.isnull1))) ParseIsNull(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.trim1))) ParseTrim(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.upper1))) ParseUpper(); + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.lower1))) ParseLower(); + } + public void ParseLike() + { + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.like1); + Expect(Scanner.ScanSymbols.like1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + Emit(Parser.ParserSymbols.push2, stringValue); + Expect(Scanner.ScanSymbols.literal1); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + } + else SyntaxCheck(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,1); + } + public void ParseTrim() + { + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.trim1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.trim1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + InsertSymbols(addSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,1); + } + public void ParseUpper() + { + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.upper1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.upper1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + InsertSymbols(addSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,1); + } + public void ParseLower() + { + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.lower1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.lower1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + InsertSymbols(addSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,1); + } +// SUBSTRING("",START_INDEX,LENGTH) + public void ParseSubstring() + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.substring1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.comma1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.comma1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(addSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.substring1); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,3); + } +// GETPRICE("MIDD",'07-13-2021','OPEN') 'OPEN'|'HIGH'|'LOW'|'CLOSE' + public void ParseGetPrice() + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.getprice1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.comma1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.comma1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(addSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.getprice1); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,3); + } + public void ParseConvert() + { + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.convert1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + Emit(Parser.ParserSymbols.push2,stringValue); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Expect(Scanner.ScanSymbols.literal1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + } + else SyntaxError(); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.comma1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + Emit(Parser.ParserSymbols.push2,stringValue); + Expect(Scanner.ScanSymbols.literal1); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + } + else SyntaxError(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.convert1); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,2); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + } + public void ParseABS() + { + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.abs1); + InsertSymbols(expressionSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.leftparen1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + RemoveSymbols(expressionSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.abs1); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,1); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + } + public void ParseSQRT() + { + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.sqrt1); + InsertSymbols(expressionSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.leftparen1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + RemoveSymbols(expressionSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.sqrt1); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,1); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + } + public void ParsePOW() + { + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.pow1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(directiveSymbols); + Expect(Scanner.ScanSymbols.comma1); + RemoveSymbols(directiveSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expression(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(addSymbols); + InsertSymbols(mathSymbols); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.pow1); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,2); + RemoveSymbols(addSymbols); + RemoveSymbols(mathSymbols); + } +// ****************************************************************************************************************************************************************************************************************** +// ***************************************************************************************************** B U I L T - I N B O O L E A N ********************************************************************************************** +// ****************************************************************************************************************************************************************************************************************** + public void ParseIn() + { + int arguments = 0; + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.in1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.in1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + while (!IsInError) + { + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightparen1))) break; + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + Emit(Parser.ParserSymbols.push2,stringValue); + arguments++; + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expect(Scanner.ScanSymbols.literal1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + VariableAccess(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + arguments++; + } + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.comma1))) + { + Expect(Scanner.ScanSymbols.comma1); + } + } + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,arguments); + } + public void ParseIsNull() + { + int arguments = 0; + Symbol namedFunction = symbolTable.Find(Scanner.ScanSymbols.isnull1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + Expect(Scanner.ScanSymbols.isnull1); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Expect(Scanner.ScanSymbols.leftparen1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + while (!IsInError) + { + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.rightparen1))) break; + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + Emit(Parser.ParserSymbols.push2, stringValue); + arguments++; + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expect(Scanner.ScanSymbols.literal1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + VariableAccess(); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + arguments++; + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.numeral1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + Emit(Parser.ParserSymbols.push2, numeralValue); + Expect(Scanner.ScanSymbols.numeral1); + arguments++; + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.comma1)); + } + else SyntaxError(); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.comma1))) + { + Expect(Scanner.ScanSymbols.comma1); + } + } + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + Emit(Parser.ParserSymbols.call2,namedFunction.SymbolName,arguments); + } +// ******************************************************************************************************************************************************************************************************************************************************************* +// ************************************************************************************************************ E N D B U I L T - I N F U N C T I O N S ****************************************************************************************************************** +// ******************************************************************************************************************************************************************************************************************************************************************* + public void Term() + { + InsertSymbols(mathSymbols); + InsertSymbols(relationSymbols); + Factor(); + RemoveSymbols(relationSymbols); + SimpleTerm(); + RemoveSymbols(mathSymbols); + return; + } + public void SimpleTerm() + { + while (SymbolIn(mathSymbols)) + { + Scanner.ScanSymbols currSymbol = currentSymbolType; + InsertSymbols(factorSymbols); + InsertSymbols(mathFunctionSymbols); + Expect(currentSymbolType); + RemoveSymbols(factorSymbols); + RemoveSymbols(mathFunctionSymbols); + Factor(); + if (Scanner.ScanSymbols.asterisk1.Equals(currSymbol)) + { + Emit(Parser.ParserSymbols.multiply2); + } + else if (Scanner.ScanSymbols.divide1.Equals(currSymbol)) + { + Emit(Parser.ParserSymbols.divide2); + } + } + } + public void Factor() + { + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.numeral1))) + { + Emit(Parser.ParserSymbols.push2, numeralValue); + Expect(currentSymbolType); + if (SymbolIn(relationSymbols)) Relation(); + SyntaxCheck(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.in1))) ParseIn(); + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.like1)))ParseLike(); + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.like1)))ParseTrim(); + else if (SymbolIn(relationSymbols)) Relation(); + SyntaxCheck(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.literal1))) + { + Emit(Parser.ParserSymbols.push2,stringValue); + Expect(currentSymbolType); + SyntaxCheck(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.null1))) + { + EmitAsNull(Parser.ParserSymbols.push2); + Expect(currentSymbolType); + SyntaxCheck(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.leftparen1))) + { + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + InsertSymbols(expressionSymbols); + InsertSymbols(directiveSymbols); + Expect(currentSymbolType); + RemoveSymbols(directiveSymbols); + RemoveSymbols(expressionSymbols); + if (SymbolIn(directiveSymbols)) Directive(); + Expression(); + Relation(); + Expect(Scanner.ScanSymbols.rightparen1); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.rightparen1)); + SyntaxCheck(); + } + else if (SymbolIn(directiveSymbols)) + { + Directive(); + } + else if (SymbolIn(new ParseSymbol(Scanner.ScanSymbols.minus1))) + { + SimpleExpression(); + } + else + { + SyntaxError(); + } + } + public void Expression() + { + while (SymbolIn(expressionSymbols)||SymbolIn(directiveSymbols)) + { + SimpleExpression(); + } + } + public void SimpleExpression() + { + InsertSymbols(addSymbols); + InsertSymbols(termSymbols); + InsertSymbols(signSymbols); + InsertSymbols(directiveSymbols); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.null1)); + SyntaxCheck(); + RemoveSymbols(signSymbols); + RemoveSymbols(directiveSymbols); + if (SymbolIn(signSymbols)) + { + Scanner.ScanSymbols currSymbol = currentSymbolType; + Expect(currentSymbolType); + if (Scanner.ScanSymbols.minus1.Equals(currSymbol)) + { + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.numeral1))) + { + Emit(Parser.ParserSymbols.push2, numeralValue); + Expect(Scanner.ScanSymbols.numeral1); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + } + else SyntaxError(); + Emit(Parser.ParserSymbols.negate2); + } + else if (Scanner.ScanSymbols.plus1.Equals(currSymbol)) + { + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.numeral1))) + { + Emit(Parser.ParserSymbols.push2, numeralValue); + Expect(Scanner.ScanSymbols.numeral1); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + } + //else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.convert1))) // sean 09/06 I think this needs to be al of the directive symbols + //{ + // ParseConvert(); + //} + else if(SymbolIn(directiveSymbols)) // sean 09/06 I think this needs to be al of the directive symbols + { + Directive(); + } + else SyntaxError(); + Emit(Parser.ParserSymbols.add2); + } + else if (Scanner.ScanSymbols.not1.Equals(currSymbol)) + { + if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.numeral1))) + { + Emit(Parser.ParserSymbols.push2, numeralValue); + Expect(Scanner.ScanSymbols.numeral1); + } + else if(SymbolIn(new ParseSymbol(Scanner.ScanSymbols.variable1))) + { + VariableAccess(); + } + else SyntaxError(); + Emit(Parser.ParserSymbols.not2); + } + RemoveSymbols(termSymbols); + } + else + { + RemoveSymbols(termSymbols); + Term(); + } + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.null1)); + while (SymbolIn(addSymbols)) + { + Scanner.ScanSymbols currSymbol = currentSymbolType; + InsertSymbols(termSymbols); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.null1)); + InsertSymbols(new ParseSymbol(Scanner.ScanSymbols.isnull1)); + InsertSymbols(stringManipulationSymbols); + Expect(currentSymbolType); + RemoveSymbols(stringManipulationSymbols); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.variable1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.literal1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.null1)); + RemoveSymbols(new ParseSymbol(Scanner.ScanSymbols.isnull1)); + RemoveSymbols(termSymbols); + Term(); + if (Scanner.ScanSymbols.plus1.Equals(currSymbol)) + { + Emit(ParserSymbols.add2); + } + else if (Scanner.ScanSymbols.minus1.Equals(currSymbol)) + { + Emit(ParserSymbols.subtract2); + } + else SyntaxError(); + } + RemoveSymbols(addSymbols); + } +// ********************************************************************************************************************************************************************************************************************* +// ******************************************************************************************************* S Y M B O L M A N A G E M E N T ************************************************************************** +// ********************************************************************************************************************************************************************************************************************* + public bool NextSymbol() + { + numeralValue = 0.00; + int code = 0; + int result = Read(ref code); + if (result == 0xFFFF) return false; + currentSymbolType = (Scanner.ScanSymbols)code; + while (Scanner.ScanSymbols.newline1.Equals(currentSymbolType)) + { + if (0xFFFF == Read(ref code)) return false; + currentSymbolType=(Scanner.ScanSymbols)code; + LineNumber++; + SymbolNumber=-1; // make sure the symbol number is relative zero so it conforms to the rest of the line numbers (which are relative zero) + } + if (Scanner.ScanSymbols.numeral1.Equals(currentSymbolType)) + { + SymbolNumber++; + Read(ref numeralValue); + } + else if (Scanner.ScanSymbols.label1.Equals(currentSymbolType)) + { + SymbolNumber++; + Read(ref stringValue); + } + else if (Scanner.ScanSymbols.literal1.Equals(currentSymbolType)) + { + SymbolNumber++; + Read(ref stringValue); + } + else if (Scanner.ScanSymbols.variable1.Equals(currentSymbolType)) + { + SymbolNumber++; + Read(ref stringValue); + } + else if(Scanner.ScanSymbols.unknown1.Equals(currentSymbolType)) + { + SymbolNumber++; + Read(ref stringValue); + SyntaxError(); + } + return true; + } + public bool SymbolIn(ParseSymbols parseSymbols) + { + return parseSymbols.SymbolIn(new ParseSymbol(currentSymbolType)); + } + public bool SymbolIn(ParseSymbol parseSymbol) + { + return new ParseSymbol(currentSymbolType).Equals(parseSymbol); + } + public bool PeekSymbol(ParseSymbol parseSymbol) + { + Scanner.ScanSymbols peekSymbol; + int intPeek = 0; +// PeekIgnore(ref intPeek,(int)Scanner.ScanSymbols.newline1); + PeekIgnore(ref intPeek,new int[]{(int)Scanner.ScanSymbols.newline1,(int)Scanner.ScanSymbols.unknown1}); + peekSymbol = (Scanner.ScanSymbols)intPeek; + if (new ParseSymbol(peekSymbol).Equals(parseSymbol)) return true; + return false; + } + public bool PeekSymbolIn(ParseSymbols parseSymbols) + { + Scanner.ScanSymbols peekSymbol; + int intPeek = 0; + PeekIgnore(ref intPeek,new int[]{(int)Scanner.ScanSymbols.newline1,(int)Scanner.ScanSymbols.unknown1}); + peekSymbol = (Scanner.ScanSymbols)intPeek; + return parseSymbols.SymbolIn(peekSymbol); + } + public void Expect(Scanner.ScanSymbols symbol) + { + if (symbol.Equals(currentSymbolType)) NextSymbol(); + else SyntaxError(symbol); + SyntaxCheck(); + } + public void InsertSymbols(ParseSymbols groupSymbols) + { + parseSymbols.InsertSymbols(groupSymbols); + } + public void RemoveSymbols(ParseSymbols removeSymbols) + { + parseSymbols.RemoveSymbols(removeSymbols); + } + public void InsertSymbols(ParseSymbol parseSymbol) + { + parseSymbols.InsertSymbols(parseSymbol); + } + public void RemoveSymbols(ParseSymbol parseSymbol) + { + parseSymbols.RemoveSymbols(parseSymbol); + } + public bool IsInError { get; set; } + public int LineNumber { get; set; } + public int LastLineNumber { get; set; } + public int SymbolNumber { get; set; } + public int LastSymbolNumber { get; set; } + public int StatementNumber { get; set; } + public int LastStatementNumber { get; set; } + public String LastMessage { get; set; } +// ************************************************************************************************************************************************************************************************************** +// ******************************************************************************************************* E R R O R H A N D L I N G ************************************************************************** +// ************************************************************************************************************************************************************************************************************** + public void SyntaxCheck() + { + if (!parseSymbols.SymbolIn(currentSymbolType)) SyntaxError(); + } + public void SyntaxError(Scanner.ScanSymbols symbol) + { + ErrorExpect(symbol); + while (!parseSymbols.SymbolIn(currentSymbolType) && NextSymbol()) ; + } + public void SyntaxError(String specificError) + { + if (!IsInError) + { + LastMessage=String.Format(" {0} at line: {1} statement: {2} symbol: {3}",specificError,LineNumber,StatementNumber,SymbolNumber); + LastLineNumber = LineNumber; + LastSymbolNumber = SymbolNumber; + LastStatementNumber = StatementNumber; + IsInError = true; + } + } + public void SyntaxError() + { + if (!IsInError) + { + if(Scanner.ScanSymbols.unknown1.Equals(currentSymbolType))LastMessage = String.Format(" Unexpected Symbol '{0}' at line: {1} statement: {2} symbol: {3}",stringValue,LineNumber,StatementNumber,SymbolNumber); + else LastMessage = String.Format(" Unexpected Symbol '{0}' at line: {1} statement: {2} symbol: {3}",Scanner.SymbolToLiteralString(currentSymbolType),LineNumber,StatementNumber,SymbolNumber); + LastLineNumber = LineNumber; + LastSymbolNumber = SymbolNumber; + LastStatementNumber = StatementNumber; + IsInError = true; + } + while (!parseSymbols.SymbolIn(currentSymbolType) && NextSymbol()) ; + } + void ErrorExpect(Scanner.ScanSymbols symbolType) + { + if (IsInError) return; + LastMessage=String.Format(" Expected Symbol {0} at line: {1} statement: {2} symbol: {3}",Scanner.SymbolToLiteralString(symbolType),LineNumber,StatementNumber,SymbolNumber); + LastLineNumber = LineNumber; + LastSymbolNumber = SymbolNumber; + LastStatementNumber = StatementNumber; + IsInError = true; + } + public void Error(Parser.ErrorCodes errorCode, String message = null) + { + if (IsInError) return; + switch (errorCode) + { + case Parser.ErrorCodes.DivideByZero : + LastMessage = ""; + LastLineNumber = LineNumber; + break; + } + } +// *********************************************************************************************************************************************************************************************************************************************** +// ***************************************************************************************************** C R E A T E S Y M B O L S ************************************************************************************************************ +// *********************************************************************************************************************************************************************************************************************************************** + private void CreateDeclarationSymbols() + { + declarationSymbols.Clear(); + declarationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.declare1)); + } + private void CreateAssignmentStatementSymbols() + { + assignmentStatementSymbols.Clear(); + assignmentStatementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.equal1)); + } + private void CreateStatementSymbols() + { + statementSymbols.Clear(); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.variable1)); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.label1)); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.literal1)); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.if1)); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.while1)); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.declare1)); + statementSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.break1)); + } + private void CreateSimpleExpressionSymbols() + { + simpleExpressionSymbols.Clear(); + simpleExpressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.plus1)); + simpleExpressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.minus1)); + simpleExpressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + simpleExpressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + } + private void CreateMathSymbols() + { + mathSymbols.Clear(); + mathSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.asterisk1)); + mathSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.divide1)); + } + private void CreateTermSymbols() + { + termSymbols.Clear(); + termSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + termSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + } + private void CreateFactorSymbols() + { + factorSymbols.Clear(); + factorSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + factorSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + factorSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.variable1)); + } + private void CreateAddSymbols() + { + addSymbols.Clear(); + addSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.minus1)); + addSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.plus1)); + } + private void CreateSignSymbols() + { + signSymbols.Clear(); + signSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.minus1)); + signSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.plus1)); + signSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.not1)); + } + private void CreateExpressionSymbols() + { + expressionSymbols.Clear(); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.leftparen1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.minus1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.plus1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.numeral1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.variable1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.literal1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.not1)); + expressionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.null1)); + } + private void CreateFunctionSymbols() + { + List symbols = new List(symbolTable.Values); + List directiveSymbolsList = (from Symbol symbol in symbols where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.FunctionSymbol) select symbol).ToList(); + foreach (Symbol symbol in directiveSymbolsList) directiveSymbols.Add(new ParseSymbol(symbol.Identifier)); + } + private void CreateRelationSymbols() + { + relationSymbols.Clear(); + relationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.less1)); + relationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.lessequal1)); + relationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.greater1)); + relationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.greaterequal1)); + relationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.notequal1)); + relationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.equalequal1)); + } + private void CreateLogicalSymbols() + { + logicalSymbols.Clear(); + logicalSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.andand1)); + logicalSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.oror1)); + } + private void CreateMathFunctionSymbols() + { + mathFunctionSymbols.Clear(); + mathFunctionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.abs1)); + mathFunctionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.sqrt1)); + mathFunctionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.pow1)); + mathFunctionSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.convert1)); + } + private void CreateStringManipulationSymbols() + { + stringManipulationSymbols.Clear(); + stringManipulationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.substring1)); + stringManipulationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.trim1)); + stringManipulationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.upper1)); + stringManipulationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.lower1)); + stringManipulationSymbols.Add(new ParseSymbol(Scanner.ScanSymbols.convert1)); + } + public static String SymbolToString(Parser.ParserSymbols code) + { + switch (code) + { + case Parser.ParserSymbols.directive_clear_modified2 : + return "directive_clear_modified2"; + case Parser.ParserSymbols.declare2 : + return "declare2"; + case Parser.ParserSymbols.undefined2 : + return "undefined2"; + case Parser.ParserSymbols.add2 : + return "add2"; + case Parser.ParserSymbols.subtract2 : + return "subtract2" ; + case Parser.ParserSymbols.multiply2 : + return "multiply2"; + case Parser.ParserSymbols.divide2 : + return "divide2"; + case Parser.ParserSymbols.assign2 : + return "assign2"; + case Parser.ParserSymbols.negate2 : + return "negate2"; + case Parser.ParserSymbols.variableaccess2 : + return "variableaccess2"; + case Parser.ParserSymbols.call2 : + return "call2"; + case Parser.ParserSymbols.push2 : + return "push2"; + case Parser.ParserSymbols.codeend2 : + return "codeend2"; + case Parser.ParserSymbols.do2 : + return "do2"; + case Parser.ParserSymbols.defaddr2 : + return "defaddr2"; + case Parser.ParserSymbols.goto2 : + return "goto2"; + case Parser.ParserSymbols.less2 : + return "less2"; + case Parser.ParserSymbols.lessequal2 : + return "lessequal2"; + case Parser.ParserSymbols.greater2 : + return "greater2"; + case Parser.ParserSymbols.greaterequal2 : + return "greaterequal2"; + case Parser.ParserSymbols.equalequal2 : + return "equalequal2" ; + case Parser.ParserSymbols.noop2 : + return "noop2" ; + case Parser.ParserSymbols.not2 : + return "not2" ; + case Parser.ParserSymbols.oror2 : + return "oror2" ; + case Parser.ParserSymbols.andand2 : + return "andand2" ; + default : + return "undefined code "+(int)code; + } + } + } +} \ No newline at end of file diff --git a/Axiom.Core/Interpreter/Scanner.cs b/Axiom.Core/Interpreter/Scanner.cs new file mode 100644 index 0000000..d3bc546 --- /dev/null +++ b/Axiom.Core/Interpreter/Scanner.cs @@ -0,0 +1,625 @@ +using System; +using System.Text; +using System.IO; + +// FileName : ParseSymbols.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class Scanner : Emitter + { + public enum ScanSymbols { unknown1, directive_clear_modified1,declare1, null1, isnull1, convert1, getprice1, substring1, in1, like1, trim1, upper1, lower1, assign1, if1, while1, then1,else1,goto1,equal1,equalequal1,less1,lessequal1,greater1,greaterequal1, notequal1,variable1, asterisk1, apostrophe1, comma1, label1, literal1, leftcurly1, rightcurly1, leftbracket1, rightbracket1, numeral1, char1, divide1, plus1, minus1, leftparen1, rightparen1, newline1, semicolon1,endtext1, andand1, oror1, abs1, not1, pow1, sqrt1, break1, end1 }; + private enum WhiteSpace{spacechar=32,tabchar=9}; + private int character; + private StringBuilder word; + private SymbolTable symbolTable; + + public Scanner(BinaryReader binaryReader, BinaryWriter binaryWriter,SymbolTable symbolTable) + : base(binaryReader, binaryWriter) + { + this.symbolTable = symbolTable; + } + public bool Analyze() + { + if(!ReadCh())return false; + while ((int)character != -1 && character != 0x001A) + { + SkipSeparators(); + if(-1==(int)character)break; + if (0xFFFF == character || 0x001A == character) break; + if (IsDigit(character) || '.'.Equals((char)character)) ScanNumeral(); + else if ('\r' == character) ScanNewLine(); + else if (';' == character) { Emit(ScanSymbols.semicolon1); ReadCh(); } + else if (',' == character) { Emit(ScanSymbols.comma1); ReadCh(); } + else if ('[' == character) { Emit(ScanSymbols.leftbracket1); ReadCh(); } + else if (']' == character) { Emit(ScanSymbols.rightbracket1); ReadCh(); } + else if ('*' == character) { Emit(ScanSymbols.asterisk1); ReadCh(); } + else if ('/' == character) { ScanDivide(); } + else if ('+' == character) { Emit(ScanSymbols.plus1); ReadCh(); } + else if ('-' == character) { Emit(ScanSymbols.minus1); ReadCh(); } + else if ('(' == character) { Emit(ScanSymbols.leftparen1); ReadCh(); } + else if (')' == character) { Emit(ScanSymbols.rightparen1); ReadCh(); } + else if ('!' == character) { Emit(ScanSymbols.not1); ReadCh(); } + else if ('{' == character) { Emit(ScanSymbols.leftcurly1); ReadCh(); } + else if ('}' == character) { Emit(ScanSymbols.rightcurly1); ReadCh(); } + else if ('\'' == character) ScanLiteral(); + else if (';' == character) ScanComment(); + else if ('=' == character) ScanEqual(); + else if ('<' == character) ScanLess(); + else if ('>' == character) ScanGreater(); + else if ('&' == character) ScanAnd(); + else if ('|' == character) ScanOr(); + else if (IsAlpha(character)) + { + if (!ScanWord()) return false; + } + else if ('#' == character) + { + if (!ScanDirective()) return false; + } + else + { + ScanUnknown(); + return false; + } + } + Emit(Scanner.ScanSymbols.endtext1); + return true; + } + public bool ReadCh() + { + try + { + character = Read(); + if (-1 == character) return false; + return true; + } + catch(Exception) + { + character = -1; + return false; + } + } + public void ScanDivide() + { + Emit(ScanSymbols.divide1); + ReadCh(); + } + public bool PeekCh(ref char ch) + { + try + { + int character=Peek(); + if(-1==character)return false; + ch=(Char)character; + return true; + } + catch(Exception) + { + return false; + } + } + public bool ScanDirective() + { + char nextChar='\0'; + if(!PeekCh(ref nextChar))return false; + if(!nextChar.Equals('#'))return ScanWord(); + while (-1!=character && 0x0D != character && 0xFFFF != character)ReadCh(); // if we have ## then take the line as a comment + return true; + } + public bool ScanWord() + { + StringBuilder sb = new StringBuilder(); + while (-1!=character && 0x0D != character && !IsKeySymbol() && 0xFFFF != character && (int)WhiteSpace.spacechar!=character && (int)WhiteSpace.tabchar != character) + { + sb.Append((char)character); + ReadCh(); + } + if (0 == sb.Length) return true; + String symbolName = sb.ToString(); + if (':'.Equals((char)character)) + { + Emit(ScanSymbols.label1); + Emit(symbolName); + ReadCh(); + } + else if(symbolTable.ContainsKey(symbolName)) + { + Symbol symbol = symbolTable[symbolName]; + if (Symbol.SymbolType.FunctionSymbol.Equals(symbol.TypeOfSymbol)) Emit(symbol.Identifier); + else if(Symbol.SymbolType.KeywordSymbol.Equals(symbol.TypeOfSymbol)) Emit(symbol.Identifier); + else if(Symbol.SymbolType.DirectiveSymbol.Equals(symbol.TypeOfSymbol)) Emit(symbol.Identifier); + else Emit(ScanSymbols.variable1, symbol.SymbolName); + } + else if(symbolTable.ContainsKey(symbolName.ToLower())) + { + symbolName = symbolName.ToLower(); + Symbol symbol = symbolTable[symbolName]; + if (Symbol.SymbolType.FunctionSymbol.Equals(symbol.TypeOfSymbol)) Emit(symbol.Identifier); + else if(Symbol.SymbolType.KeywordSymbol.Equals(symbol.TypeOfSymbol)) Emit(symbol.Identifier); + else Emit(ScanSymbols.variable1, symbol.SymbolName); + } + else + { + Emit(ScanSymbols.variable1, symbolName); + } + return true; + } + public bool ScanNumeral() + { + int[] chBuffer = new int[128]; + int chIndex = 0; + while (0xFFFF != character && (IsDigit(character) || IsInHex(character) || '.'.Equals((char)character))) + { + if (chIndex >= chBuffer.Length) return false; + chBuffer[chIndex++] = character; + ReadCh(); + } + if (character == 69) Exponent(chBuffer, chIndex); + else if ('h' == character || 'H' == character) { Hex(chBuffer, chIndex); ReadCh(); } + else if ('b' == character || 'B' == character) { Binary(chBuffer, chIndex); ReadCh(); } + else if (chIndex > 0 && ('b' == chBuffer[chIndex - 1] || 'B' == chBuffer[chIndex - 1])) Binary(chBuffer, chIndex - 1); + else Decimal(chBuffer, chIndex); + return true; + } + public void Exponent(int[] chBuffer, int chIndex) + { + chBuffer[chIndex++] = character; + ReadCh(); + while (0xFFFF != character && (character == 43 || character == 45 || IsDigit(character))) + { + if (chIndex >= chBuffer.Length) return; + chBuffer[chIndex++] = character; + ReadCh(); + } + Decimal(chBuffer, chIndex); + } + public void Binary(int[] chBuffer,int chIndex) + { + int value=0; + int multiplier=1; + + for(--chIndex;chIndex>=0;chIndex--) + { + switch(chBuffer[chIndex]) + { + case '0' : break; + case '1' : {value+=multiplier;break;} + default : {Emit(ScanSymbols.unknown1);return;} + } + multiplier*=2; + } + Emit(ScanSymbols.numeral1,value); + } + public void Decimal(int[] chBuffer,int chIndex) + { + StringBuilder sb = new StringBuilder(); + for (int index = 0; index < chBuffer.Length; index++) sb.Append((char)chBuffer[index]); + double value = double.Parse(sb.ToString()); + Emit(ScanSymbols.numeral1,value); + } + public bool IsInHex(int character) + { + if ('A'.Equals(character) || 'B'.Equals(character) || 'C'.Equals(character) || 'D'.Equals(character) || 'E'.Equals(character) || 'F'.Equals(character) || + 'a'.Equals(character) || 'b'.Equals(character) || 'c'.Equals(character) || 'd'.Equals(character) || 'e'.Equals(character) || 'f'.Equals(character)) return true; + return false; + } + void Hex(int[] chBuffer, int chIndex) + { + int value=0; + int multiplier=1; + + for(--chIndex;chIndex>=0;chIndex--) + { + switch(chBuffer[chIndex]) + { + case '0' : break; + case '1' : {value+=multiplier;break;} + case '2' : {value+=multiplier*2;break;} + case '3' : {value+=multiplier*3;break;} + case '4' : {value+=multiplier*4;break;} + case '5' : {value+=multiplier*5;break;} + case '6' : {value+=multiplier*6;break;} + case '7' : {value+=multiplier*7;break;} + case '8' : {value+=multiplier*8;break;} + case '9' : {value+=multiplier*9;break;} + case 'a' : + case 'A' : {value+=multiplier*10;break;} + case 'b' : + case 'B' : {value+=multiplier*11;break;} + case 'c' : + case 'C' : {value+=multiplier*12;break;} + case 'd' : + case 'D' : {value+=multiplier*13;break;} + case 'e' : + case 'E' : {value+=multiplier*14;break;} + case 'f' : + case 'F' : {value+=multiplier*15;break;} + default : {Emit(ScanSymbols.unknown1);return;} + } + multiplier*=16; + } + Emit(ScanSymbols.numeral1,value); + } + + public void SkipSeparators() + { + while (character.Equals((int)WhiteSpace.spacechar) || character.Equals((int)WhiteSpace.tabchar)) ReadCh(); + } + public void ScanNewLine() + { + Emit(ScanSymbols.newline1); + ReadCh(); + while (character.Equals('\n') || character.Equals('\n')) ReadCh(); + } + public void ScanAnd() + { + int character=0; + + Peek(ref character); + if ('&'.Equals((char)character)) + { + Emit(ScanSymbols.andand1); + ReadCh(); + ReadCh(); + } + else + { + Emit(ScanSymbols.unknown1); + ReadCh(); + } + } + public void ScanOr() + { + int character=0; + + Peek(ref character); + if ('|'.Equals((char)character)) + { + Emit(ScanSymbols.oror1); + ReadCh(); + ReadCh(); + } + else + { + Emit(ScanSymbols.unknown1); + ReadCh(); + } + } + public void ScanEqual() + { + int character=0; + + Peek(ref character); + if ('='.Equals((char)character)) + { + Emit(ScanSymbols.equalequal1); + ReadCh(); + ReadCh(); + } + else + { + Emit(ScanSymbols.equal1); + ReadCh(); + } + } + public void ScanLess() + { + int character=0; + + Peek(ref character); + if ('='.Equals((char)character)) + { + Emit(ScanSymbols.lessequal1); + ReadCh(); + ReadCh(); + } + else if ('>'.Equals((char)character)) + { + Emit(ScanSymbols.notequal1); + ReadCh(); + ReadCh(); + } + else + { + Emit(ScanSymbols.less1); + ReadCh(); + } + } + public void ScanGreater() + { + int character=0; + + Peek(ref character); + if ('='.Equals((char)character)) + { + Emit(ScanSymbols.greaterequal1); + ReadCh(); + ReadCh(); + } + else + { + Emit(ScanSymbols.greater1); + ReadCh(); + } + } + public void ScanComment() + { + ReadCh(); + while(!character.Equals('\r')&&!character.Equals(0xFFFF))ReadCh(); + } + public bool IsAlpha(int character) + { + return Char.IsLetter((char)character); + } + public bool IsDigit(int character) + { + return Char.IsDigit((char)character); + } + public bool IsKeySymbol() + { + return ('}'==character||'{'==character||'<'==character||'>'==character||';'==character || ' ' == character || ',' == character || '[' == character || ']' == character || ':' == character || '*' == character || '/' == character || '+' == character || '-' == character || '(' == character || ')' == character ||'='==character); + } + public void ScanLiteral() + { + int character; + word = new StringBuilder(); + ReadCh(); + character = this.character; + if (character == '\'') + { + Emit(ScanSymbols.literal1,word.ToString()); + ReadCh(); + return; + } + while (-1!=character && 0xFFFF != this.character && 0x0D != this.character) + { + if ('\'' == this.character) + { + char peekChar=(char)0; + PeekCh(ref peekChar); + if ('\'' != peekChar) break; + ReadCh(); + } + word.Append((char)this.character); + if (!ReadCh()) break; + } + ReadCh(); + Emit(ScanSymbols.literal1,word.ToString()); + } + public void ScanUnknown() + { + ReadCh(); + Emit(ScanSymbols.unknown1); + } + public static String SymbolToLiteralString(Scanner.ScanSymbols code) + { + switch(code) + { + case Scanner.ScanSymbols.directive_clear_modified1 : + return "directive_clear_modified1"; + case Scanner.ScanSymbols.declare1 : + return "declare"; + case Scanner.ScanSymbols.unknown1 : + return "unknown symbol"; + case Scanner.ScanSymbols.assign1 : + return "assignment"; + case Scanner.ScanSymbols.if1 : + return "if"; + case Scanner.ScanSymbols.while1 : + return "while"; + case Scanner.ScanSymbols.then1 : + return "then"; + case Scanner.ScanSymbols.else1 : + return "else"; + case Scanner.ScanSymbols.goto1 : + return "goto"; + case Scanner.ScanSymbols.equal1 : + return "="; + case Scanner.ScanSymbols.equalequal1 : + return "=="; + case Scanner.ScanSymbols.less1 : + return "<"; + case Scanner.ScanSymbols.lessequal1 : + return "<="; + case Scanner.ScanSymbols.greater1 : + return ">"; + case Scanner.ScanSymbols.greaterequal1 : + return ">="; + case Scanner.ScanSymbols.notequal1 : + return "<>"; + case Scanner.ScanSymbols.variable1 : + return "variable"; + case Scanner.ScanSymbols.asterisk1 : + return "*"; + case Scanner.ScanSymbols.apostrophe1 : + return "'"; + case Scanner.ScanSymbols.comma1 : + return ","; + case Scanner.ScanSymbols.label1 : + return "label"; + case Scanner.ScanSymbols.literal1 : + return "'"; + case Scanner.ScanSymbols.leftcurly1 : + return "{"; + case Scanner.ScanSymbols.rightcurly1 : + return "}"; + case Scanner.ScanSymbols.leftbracket1 : + return "["; + case Scanner.ScanSymbols.rightbracket1 : + return "]"; + case Scanner.ScanSymbols.numeral1 : + return "numeral"; + case Scanner.ScanSymbols.char1 : + return "character"; + case Scanner.ScanSymbols.divide1 : + return "/"; + case Scanner.ScanSymbols.plus1 : + return "+"; + case Scanner.ScanSymbols.minus1 : + return "-"; + case Scanner.ScanSymbols.leftparen1 : + return "("; + case Scanner.ScanSymbols.rightparen1 : + return ")"; + case Scanner.ScanSymbols.newline1 : + return "newline"; + case Scanner.ScanSymbols.semicolon1 : + return ";"; + case Scanner.ScanSymbols.endtext1 : + return ";"; + case Scanner.ScanSymbols.end1 : + return "end"; + case Scanner.ScanSymbols.andand1 : + return "&&"; + case Scanner.ScanSymbols.oror1 : + return "||"; + case Scanner.ScanSymbols.abs1 : + return "abs"; + case Scanner.ScanSymbols.pow1 : + return "pow"; + case Scanner.ScanSymbols.sqrt1 : + return "sqrt"; + case Scanner.ScanSymbols.not1 : + return "!"; + case Scanner.ScanSymbols.convert1 : + return "convert"; + case Scanner.ScanSymbols.in1 : + return "in"; + case Scanner.ScanSymbols.like1 : + return "like"; + case Scanner.ScanSymbols.trim1 : + return "trim"; + case Scanner.ScanSymbols.upper1 : + return "upper"; + case Scanner.ScanSymbols.lower1 : + return "lower"; + case Scanner.ScanSymbols.substring1 : + return "substring"; + case Scanner.ScanSymbols.getprice1 : + return "getprice"; + case Scanner.ScanSymbols.null1 : + return "null"; + case Scanner.ScanSymbols.isnull1 : + return "isnull"; + default : + return ""; + } + } + public static String SymbolToString(Scanner.ScanSymbols code) + { + switch(code) + { + case Scanner.ScanSymbols.directive_clear_modified1 : + return "directive_clear_modified1"; + case Scanner.ScanSymbols.declare1 : + return "declare1"; + case Scanner.ScanSymbols.unknown1 : + return "unknown1"; + case Scanner.ScanSymbols.assign1 : + return "assign1"; + case Scanner.ScanSymbols.if1 : + return "if1"; + case Scanner.ScanSymbols.while1 : + return "while1"; + case Scanner.ScanSymbols.then1 : + return "then1"; + case Scanner.ScanSymbols.else1 : + return "else1"; + case Scanner.ScanSymbols.goto1 : + return "goto1"; + case Scanner.ScanSymbols.equal1 : + return "equal1"; + case Scanner.ScanSymbols.equalequal1 : + return "equalequal1"; + case Scanner.ScanSymbols.less1 : + return "less1"; + case Scanner.ScanSymbols.lessequal1 : + return "lessequal1"; + case Scanner.ScanSymbols.greater1 : + return "greater1"; + case Scanner.ScanSymbols.greaterequal1 : + return "greaterequal1"; + case Scanner.ScanSymbols.notequal1 : + return "notequal1"; + case Scanner.ScanSymbols.variable1 : + return "variable1"; + case Scanner.ScanSymbols.asterisk1 : + return "asterisk1"; + case Scanner.ScanSymbols.apostrophe1 : + return "apostrophe1"; + case Scanner.ScanSymbols.comma1 : + return "comma1"; + case Scanner.ScanSymbols.label1 : + return "label1"; + case Scanner.ScanSymbols.literal1 : + return "literal1"; + case Scanner.ScanSymbols.leftcurly1 : + return "leftcurly1"; + case Scanner.ScanSymbols.rightcurly1 : + return "rightcurly1"; + case Scanner.ScanSymbols.leftbracket1 : + return "leftbracket1"; + case Scanner.ScanSymbols.rightbracket1 : + return "rightbracket1"; + case Scanner.ScanSymbols.numeral1 : + return "numeral1"; + case Scanner.ScanSymbols.char1 : + return "char1"; + case Scanner.ScanSymbols.divide1 : + return "divide1"; + case Scanner.ScanSymbols.plus1 : + return "plus1"; + case Scanner.ScanSymbols.minus1 : + return "minus1"; + case Scanner.ScanSymbols.leftparen1 : + return "leftparen1"; + case Scanner.ScanSymbols.rightparen1 : + return "rightparen1"; + case Scanner.ScanSymbols.newline1 : + return "newline1"; + case Scanner.ScanSymbols.semicolon1 : + return "semicolon1"; + case Scanner.ScanSymbols.endtext1 : + return "endtext1"; + case Scanner.ScanSymbols.end1 : + return "end1"; + case Scanner.ScanSymbols.andand1 : + return "andand1"; + case Scanner.ScanSymbols.oror1 : + return "oror1"; + case Scanner.ScanSymbols.abs1 : + return "abs1"; + case Scanner.ScanSymbols.pow1 : + return "pow1"; + case Scanner.ScanSymbols.sqrt1 : + return "sqrt1"; + case Scanner.ScanSymbols.not1 : + return "not1"; + case Scanner.ScanSymbols.convert1 : + return "convert1"; + case Scanner.ScanSymbols.in1 : + return "in1"; + case Scanner.ScanSymbols.like1 : + return "like1"; + case Scanner.ScanSymbols.trim1 : + return "trim1"; + case Scanner.ScanSymbols.upper1 : + return "upper1"; + case Scanner.ScanSymbols.lower1 : + return "lower1"; + case Scanner.ScanSymbols.substring1 : + return "substring1"; + case Scanner.ScanSymbols.getprice1 : + return "getprice1"; + case Scanner.ScanSymbols.null1 : + return "null1"; + case Scanner.ScanSymbols.isnull1 : + return "isnull1"; + default : + return ""; + } + } + } +} diff --git a/Axiom.Core/Interpreter/StackElement.cs b/Axiom.Core/Interpreter/StackElement.cs new file mode 100644 index 0000000..8230f2e --- /dev/null +++ b/Axiom.Core/Interpreter/StackElement.cs @@ -0,0 +1,31 @@ +using System.Collections.Generic; + +// FileName : StackElement.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class CodeStack + { + private Stack codeStack = new Stack(); + public CodeStack() + { + } + public void Push(StackElement stackElement) + { + codeStack.Push(stackElement); + } + public StackElement Pop() + { + return codeStack.Pop(); + } + } + public class StackElement + { + public StackElement() + { + } + public GenericData Value { get; set; } + public Symbol Symbol { get; set; } + } +} diff --git a/Axiom.Core/Interpreter/Symbol.cs b/Axiom.Core/Interpreter/Symbol.cs new file mode 100644 index 0000000..bb00664 --- /dev/null +++ b/Axiom.Core/Interpreter/Symbol.cs @@ -0,0 +1,40 @@ +using System; + +// FileName : Symbol.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class Symbol + { + public enum SymbolType { KeywordSymbol,FunctionSymbol, UserSymbol, UserDynamicSymbol, DirectiveSymbol}; + private bool isMutable=true; + private bool isModified=false; + public Symbol() + { + IsMutable = true; + } + public Symbol(String symbolName, Scanner.ScanSymbols identifier,SymbolType symbolType = SymbolType.UserSymbol) + { + this.SymbolName = symbolName; + this.Identifier = identifier; + this.TypeOfSymbol = symbolType; + if (symbolType.Equals(SymbolType.UserSymbol)) IsMutable = true; + else IsMutable = false; + } + public String SymbolName{get;set;} + public Scanner.ScanSymbols Identifier{get;set;} + public SymbolType TypeOfSymbol{get;set;} + public GenericData GenericData { get; set; } + public bool IsMutable + { + get { return isMutable; } + set {isMutable=value;} + } + public bool IsModified + { + get {return isModified;} + set {isModified=value;} + } + } +} diff --git a/Axiom.Core/Interpreter/SymbolTable.cs b/Axiom.Core/Interpreter/SymbolTable.cs new file mode 100644 index 0000000..0855668 --- /dev/null +++ b/Axiom.Core/Interpreter/SymbolTable.cs @@ -0,0 +1,205 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Data; +using log4net; +using System.Reflection; +using Axiom.Utils; + +// FileName : SymbolTable.cs +// Author : Sean Kessler + +namespace Axiom.Interpreter +{ + public class SymbolTable : Dictionary + { + private static ILog logger = LogManager.GetLogger(typeof(SymbolTable)); + private Dictionary symbolsById = new Dictionary(); + public SymbolTable() + { + CreateSymbolTable(); + } +// Example: symbolTable.AddObjects(new Object[]{position}.ToList()); + public void AddObjects(List objects) + { + foreach(Object obj in objects) + { + AddObject(obj); + } + } +// Example: symbolTable.AddObject("Num",55.00); + public void AddObject(String symbolName,Object obj) + { + Type objectType=obj.GetType(); + Symbol symbol=new Symbol(symbolName,Scanner.ScanSymbols.variable1,Symbol.SymbolType.UserSymbol); + Add(symbolName,symbol); + symbol.GenericData = new GenericData(); + String stringRepData = obj.ToString(); + symbol.GenericData.Data = GenericData.ConvertType(objectType, stringRepData); + } +// Example: symbolTable.AddObject(position) + public void AddObject(Object obj) + { + DataTable dataTable=new DataTable(); + Type classType=obj.GetType(); + PropertyInfo[] properties = classType.GetProperties(); + foreach(PropertyInfo propertyInfo in properties) + { + MethodInfo methodInfo=propertyInfo.GetGetMethod(); + String methodName=methodInfo.Name; + if(!methodName.StartsWith("get_"))continue; + methodName=methodName.Replace("get_",null); + DataColumn dataColumn=new DataColumn(); + dataColumn.ColumnName=methodName; + dataColumn.DataType=methodInfo.ReturnType; // capture the data type + dataTable.Columns.Add(dataColumn); + } + DataRow dataRow=dataTable.NewRow(); + foreach(PropertyInfo propertyInfo in properties) + { + MethodInfo methodInfo=propertyInfo.GetGetMethod(); + String methodName=methodInfo.Name; + if(!methodName.StartsWith("get_"))continue; + methodName=methodName.Replace("get_",null); + dataRow[methodName]=methodInfo.Invoke(obj,null); + } + AddUserSymbols(dataTable); + AddUserValues(dataRow,dataTable); + } + public void AddUserSymbols(DataTable dataTable) + { + DataColumnCollection columns=dataTable.Columns; + foreach (DataColumn column in columns) + { + String symbolName = column.ColumnName; + if(ContainsKey(symbolName))continue; + Symbol symbol=new Symbol(symbolName,Scanner.ScanSymbols.variable1,Symbol.SymbolType.UserSymbol); + Add(symbolName,symbol); + } + } + public void AddUserValues(DataRow dataRow,DataTable dataTable) + { + DataColumnCollection columns = dataTable.Columns; + for(int index=0;index GetModfied() + { + List symbols = this.Values.ToList(); + symbols = (from Symbol symbol in symbols where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserSymbol) && symbol.IsModified select symbol).ToList(); + return symbols; + } + public String GetModifiedSymbolNames() + { + List symbols = this.Values.ToList(); + List symbolNames = (from Symbol symbol in symbols where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserSymbol) && symbol.IsModified select symbol.SymbolName).ToList(); + return Utility.ListToString(symbolNames); + } + public void Reset() + { + ClearModified(); + ClearData(); + RemoveUserDynamicSymbols(); + } + public void RemoveUserDynamicSymbols() + { + List symbols = this.Values.ToList(); + symbols = (from Symbol symbol in symbols where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserDynamicSymbol) select symbol).ToList(); + foreach (Symbol symbol in symbols) this.Remove(symbol.SymbolName); + } + public void ClearModified() + { + List symbols = this.Values.ToList(); + symbols = (from Symbol symbol in symbols where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserSymbol) select symbol).ToList(); + foreach (Symbol symbol in symbols) symbol.IsModified = false; + } + public void ClearData() + { + List symbols = this.Values.ToList(); + foreach (Symbol symbol in symbols) symbol.GenericData = null; + } + public bool IsModified() + { + List symbols = this.Values.ToList(); + symbols = (from Symbol symbol in symbols where symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserSymbol) select symbol).ToList(); + foreach (Symbol symbol in symbols) if(symbol.IsModified)return true; + return false; + } + private void CreateSymbolTable() + { + Add("#directive_clear_modified",new Symbol("#directive_clear_modified",Scanner.ScanSymbols.directive_clear_modified1,Symbol.SymbolType.DirectiveSymbol)); + Add("declare",new Symbol("declare",Scanner.ScanSymbols.declare1,Symbol.SymbolType.KeywordSymbol)); + Add("if",new Symbol("if",Scanner.ScanSymbols.if1,Symbol.SymbolType.KeywordSymbol)); + Add("break",new Symbol("break",Scanner.ScanSymbols.break1,Symbol.SymbolType.KeywordSymbol)); + Add("while",new Symbol("while",Scanner.ScanSymbols.while1,Symbol.SymbolType.KeywordSymbol)); + Add("then", new Symbol("then", Scanner.ScanSymbols.then1, Symbol.SymbolType.KeywordSymbol)); + Add("else", new Symbol("else", Scanner.ScanSymbols.else1, Symbol.SymbolType.KeywordSymbol)); + Add("and", new Symbol("and", Scanner.ScanSymbols.andand1, Symbol.SymbolType.KeywordSymbol)); + Add("or", new Symbol("or", Scanner.ScanSymbols.oror1, Symbol.SymbolType.KeywordSymbol)); + Add("null", new Symbol("null", Scanner.ScanSymbols.null1, Symbol.SymbolType.KeywordSymbol)); +// high level functions + Symbol symbol=null; + + symbol=new Symbol("abs", Scanner.ScanSymbols.abs1, Symbol.SymbolType.FunctionSymbol); // abs(x) + Add("abs",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.abs1,symbol); + + symbol=new Symbol("pow", Scanner.ScanSymbols.pow1, Symbol.SymbolType.FunctionSymbol); // pow(x,y) + Add("pow",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.pow1,symbol); + + symbol=new Symbol("sqrt", Scanner.ScanSymbols.sqrt1, Symbol.SymbolType.FunctionSymbol); // sqrt(x) + Add("sqrt",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.sqrt1,symbol); + + symbol=new Symbol("convert", Scanner.ScanSymbols.convert1, Symbol.SymbolType.FunctionSymbol); // convert(x,'{type}') convert(variable|literal,'{datatype}') convert('01-02-2018','System.DateTime') + Add("convert",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.convert1,symbol); + + symbol=new Symbol("substring", Scanner.ScanSymbols.substring1, Symbol.SymbolType.FunctionSymbol); // substring(variable|literal,numeral|variable,numeral|variable) + Add("substring",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.substring1,symbol); + + symbol=new Symbol("getprice", Scanner.ScanSymbols.getprice1, Symbol.SymbolType.FunctionSymbol); // getprice(variable|literal,variable|literal) getprice('midd','07-12-2021') + Add("getprice",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.getprice1,symbol); + + symbol=new Symbol("in", Scanner.ScanSymbols.in1, Symbol.SymbolType.FunctionSymbol); // in('X','Y','Z') + Add("in",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.in1,symbol); + + symbol=new Symbol("like", Scanner.ScanSymbols.like1, Symbol.SymbolType.FunctionSymbol); // like 'x%' + Add("like",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.like1,symbol); + + symbol=new Symbol("trim", Scanner.ScanSymbols.trim1, Symbol.SymbolType.FunctionSymbol); // trim('x') + Add("trim",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.trim1,symbol); + + symbol=new Symbol("upper", Scanner.ScanSymbols.upper1, Symbol.SymbolType.FunctionSymbol); // upper('x') + Add("upper",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.upper1,symbol); + + symbol=new Symbol("lower", Scanner.ScanSymbols.lower1, Symbol.SymbolType.FunctionSymbol); // lower('x') + Add("lower",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.lower1,symbol); + + symbol=new Symbol("isnull", Scanner.ScanSymbols.isnull1, Symbol.SymbolType.FunctionSymbol); // isnull(variable) + Add("isnull",symbol); + symbolsById.Add((int)Scanner.ScanSymbols.isnull1,symbol); + } + public Symbol Find(Scanner.ScanSymbols identifier) + { + if (!symbolsById.ContainsKey((int)identifier)) return null; + return this[symbolsById[(int)identifier].SymbolName]; + } + } +} diff --git a/Axiom.Core/Utility/Utility.cs b/Axiom.Core/Utility/Utility.cs new file mode 100644 index 0000000..1f0e9ae --- /dev/null +++ b/Axiom.Core/Utility/Utility.cs @@ -0,0 +1,134 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Globalization; +using log4net; + +namespace Axiom.Utils +{ + public class Utility + { + private static ILog logger = LogManager.GetLogger(typeof(Utility)); + private Utility() + { + } + public static Stream StreamFromString(string s) + { + var stream = new MemoryStream(); + var writer = new StreamWriter(stream); + writer.Write(s); + writer.Flush(); + stream.Position = 0; + return stream; + } + public static String ListToString(List list) + { + if (null == list || 0 == list.Count) return ""; + StringBuilder sb = new StringBuilder(); + for (int index = 0; index < list.Count; index++) + { + sb.Append(list[index]); + if (index < list.Count-1) sb.Append(","); + } + return sb.ToString(); + } + public static String DateTimeToStringYYYYMMDD(DateTime dateTime) + { + return dateTime.ToString("yyyyMMdd"); + } + public static String DateTimeToStringMMHDDHYYYY(DateTime dateTime) + { + return dateTime.ToString("MM-dd-yyyy"); + } + public static String DateTimeToStringMMSDDSYYYYHHMMSS(DateTime dateTime) + { + return dateTime.ToString("MM/dd/yyyy hh:mm:ss tt"); + } + public static String DateTimeToTicks(DateTime dateTime) + { + return dateTime.Ticks.ToString(); + } + public static String KeepAfter(String strString,char ch) + { + int startPos = strString.IndexOf(ch); + if (-1 == startPos) return strString; + return strString.Substring(startPos + 1); + } + public static String KeepBefore(String strString, char ch) + { + int startPos = strString.IndexOf(ch); + if (-1 == startPos) return strString; + return strString.Substring(0,startPos); + } + public static DateTime ParseDate(String strDate) + { + logger.InfoFormat("Parsing date {0}",strDate); + System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US"); + String[] formats = new[] { "yyyy/MM/dd","M-d-yyyy", "dd-MM-yyyy", "MM-dd-yyyy", "M.d.yyyy", "dd.MM.yyyy", "MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray(); + strDate = strDate.Trim(); + DateTime dateTime=DateTime.ParseExact(strDate, formats, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal); + return dateTime; + } + public static String AddQuotes(String item) + { + return "\"" + item + "\""; + } + public static String RemoveCC(String item) + { + StringBuilder sb = new StringBuilder(); + foreach (char ch in item) + { + if (!Char.IsControl(ch)) sb.Append(ch); + } + return sb.ToString(); + } + public static String SqlString(String value) + { + StringBuilder sb = new StringBuilder(); + foreach (char ch in value) + { + sb.Append(ch); + if (ch == '\'') sb.Append("'"); + } + return sb.ToString(); + } + public static String IsNull(String s1,String s2) + { + if (null == s1) return s2; + return s1; + } + public static String NullIfOrCat(String s1,String s2,String s3) + { + if (string.IsNullOrEmpty(s1)) return s2; + return s1+s3; + } + public static String Pad(string str, char filler, int length) + { + int stringLength = str.Length; + if (stringLength >= length) return str; + StringBuilder sb = new StringBuilder(); + + while (stringLength < length) + { + sb.Append(filler); + stringLength++; + } + return sb.ToString() + str; + } + public static String CreateInClause(String commaSepList,String dataType) + { + StringBuilder sb = new StringBuilder(); + sb.Append("("); + String[] items = commaSepList.Split(','); + for (int index = 0; index < items.Length; index++) + { + sb.Append("'").Append(items[index]).Append("'"); + if (index < items.Length - 1) sb.Append(","); + } + sb.Append(")"); + return sb.ToString(); + } + } +} diff --git a/Axiom.Core/app.config b/Axiom.Core/app.config new file mode 100644 index 0000000..43ee139 --- /dev/null +++ b/Axiom.Core/app.config @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Axiom.sln b/Axiom.sln new file mode 100644 index 0000000..1606567 --- /dev/null +++ b/Axiom.sln @@ -0,0 +1,29 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.21005.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Axiom.Core", "Axiom.Core\Axiom.Core.csproj", "{F0F0F2B4-BB86-49B5-BA93-2642637033D6}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{88CECEDC-E4EE-4E86-8FE0-B670FA5C710F}" + ProjectSection(SolutionItems) = preProject + Notes.txt = Notes.txt + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C0AFCD8E-4455-40BA-BE0B-79C0C85CC83D} + EndGlobalSection +EndGlobal diff --git a/AxiomConsole.sln b/AxiomConsole.sln new file mode 100644 index 0000000..f48fe52 --- /dev/null +++ b/AxiomConsole.sln @@ -0,0 +1,30 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.21005.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Axiom.Core", "Axiom.Core\Axiom.Core.csproj", "{F0F0F2B4-BB86-49B5-BA93-2642637033D6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AxiomConsole", "AxiomConsole\AxiomConsole.csproj", "{33E3DF62-2592-4040-B858-F8D115686531}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.Build.0 = Release|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Debug|Any CPU.Build.0 = Debug|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Release|Any CPU.ActiveCfg = Release|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C0AFCD8E-4455-40BA-BE0B-79C0C85CC83D} + EndGlobalSection +EndGlobal diff --git a/AxiomConsole/App.config b/AxiomConsole/App.config new file mode 100644 index 0000000..8d23437 --- /dev/null +++ b/AxiomConsole/App.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/AxiomConsole/AxiomConsole.csproj b/AxiomConsole/AxiomConsole.csproj new file mode 100644 index 0000000..b557efe --- /dev/null +++ b/AxiomConsole/AxiomConsole.csproj @@ -0,0 +1,66 @@ + + + + + Debug + AnyCPU + {33E3DF62-2592-4040-B858-F8D115686531} + Exe + Properties + AxiomConsole + AxiomConsole + v4.6.2 + 512 + + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + {f0f0f2b4-bb86-49b5-ba93-2642637033d6} + Axiom.Core + + + + + \ No newline at end of file diff --git a/AxiomConsole/AxiomConsole.sln b/AxiomConsole/AxiomConsole.sln new file mode 100644 index 0000000..a31dab7 --- /dev/null +++ b/AxiomConsole/AxiomConsole.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.21005.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AxiomConsole", "AxiomConsole.csproj", "{33E3DF62-2592-4040-B858-F8D115686531}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Axiom.Core", "..\Axiom.Core\Axiom.Core.csproj", "{F0F0F2B4-BB86-49B5-BA93-2642637033D6}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {33E3DF62-2592-4040-B858-F8D115686531}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Debug|Any CPU.Build.0 = Debug|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Release|Any CPU.ActiveCfg = Release|Any CPU + {33E3DF62-2592-4040-B858-F8D115686531}.Release|Any CPU.Build.0 = Release|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/AxiomConsole/Program.cs b/AxiomConsole/Program.cs new file mode 100644 index 0000000..408b681 --- /dev/null +++ b/AxiomConsole/Program.cs @@ -0,0 +1,52 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using Axiom.Utils; +using Axiom.Interpreter; +using System.IO; + +namespace AxiomConsole +{ + class Program + { + static void Main(string[] args) + { + +// String expression=@" +// A=1; +// WHILE(A<10) +// { +// IF(A==1)THEN break; +// }"; + String expression=@" + A=1; + B=1; + WHILE(A<10) + { + WHILE(B<10) + { + IF(B==1)THEN BREAK; + B=B+1; + } + IF(A==1)THEN BREAK; + A=A+1; + }"; + CodeRunner codeRunner=new CodeRunner(); + List disassembly=codeRunner.Disassemble(expression); + if(codeRunner.IsInError) + { + Console.WriteLine("CodeRunner Failed with {0}",codeRunner.LastMessage); + } + else + { + Console.WriteLine(expression); + foreach(String line in disassembly) + { + Console.WriteLine(line); + } + } + Console.Read(); + } + } +} + diff --git a/AxiomConsole/Properties/AssemblyInfo.cs b/AxiomConsole/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..f605028 --- /dev/null +++ b/AxiomConsole/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AxiomConsole")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AxiomConsole")] +[assembly: AssemblyCopyright("Copyright © 2024")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("650e4f18-bbd4-400b-b445-5c497023c280")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AxiomUnitTestProject/AxiomUnitTestProject.sln b/AxiomUnitTestProject/AxiomUnitTestProject.sln new file mode 100644 index 0000000..3646c19 --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProject.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.21005.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AxiomUnitTestProject", "AxiomUnitTestProjectr\AxiomUnitTestProject.csproj", "{E2FC10FA-2B8A-4CEB-B7C6-960FA6A3AC6F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Axiom.Core", "..\Axiom.Core\Axiom.Core.csproj", "{F0F0F2B4-BB86-49B5-BA93-2642637033D6}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {E2FC10FA-2B8A-4CEB-B7C6-960FA6A3AC6F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E2FC10FA-2B8A-4CEB-B7C6-960FA6A3AC6F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E2FC10FA-2B8A-4CEB-B7C6-960FA6A3AC6F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E2FC10FA-2B8A-4CEB-B7C6-960FA6A3AC6F}.Release|Any CPU.Build.0 = Release|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F0F0F2B4-BB86-49B5-BA93-2642637033D6}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/App.config b/AxiomUnitTestProject/AxiomUnitTestProjectr/App.config new file mode 100644 index 0000000..84cda96 --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/App.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/AssemblerTests.cs b/AxiomUnitTestProject/AxiomUnitTestProjectr/AssemblerTests.cs new file mode 100644 index 0000000..930c887 --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/AssemblerTests.cs @@ -0,0 +1,736 @@ +using System; +using System.Linq; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System.Collections.Generic; +using Axiom.Utils; +using Axiom.Interpreter; +using System.IO; + +namespace AxiomUnitTestProject +{ + + [TestClass] + public class AssemblerTests + { + [TestMethod] + public void BreakStatementVariant4() + { + String expression=@" + A=1; + B=1; + WHILE(A<10) + { + WHILE(B<10) + { + IF(B==100)THEN BREAK; + B=B+1; + } + IF(A==100)THEN BREAK; + A=A+1; + }"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("A").Equals(10)); + Assert.IsTrue(codeRunner.GetValue("B").Equals(10)); + } + + [TestMethod] + public void BreakStatementVariant3() + { + String expression=@" + A=1; + B=1; + WHILE(A<10) + { + WHILE(B<10) + { + IF(B==1)THEN BREAK; + B=B+1; + } + IF(A==1)THEN BREAK; + A=A+1; + }"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("A").Equals(1)); + Assert.IsTrue(codeRunner.GetValue("B").Equals(1)); + } + + [TestMethod] + public void BreakStatementVariant2() + { + String expression=@" + A=1; + WHILE(A<10) + { + IF(A==1)THEN BREAK; + A=A+1; + } + "; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("A").Equals(1)); + } + + [TestMethod] + public void BreakStatementVariant1() + { + String expression=@" + break; + "; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsFalse(codeRunner.Execute(expression),codeRunner.LastMessage); + } + + [TestMethod] + public void DeclarationStatementVariant3() + { + String expression=@" + DECLARE A; + DECLARE B; + B=5; + DECLARE C; + D=6; + "; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("D").Equals(6)); + } + + [TestMethod] + public void DeclarationStatementVariant2() + { + String expression=@" + DECLARE A; + DECLARE B; + B=5; + DECLARE C; + "; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("B").Equals(5)); + } + + [TestMethod] + public void DeclarationStatementVariant1() + { + String expression=@" + DECLARE A; + DECLARE B; + B=5; + "; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("B").Equals(5)); + } + + [TestMethod] + public void WhileStatementVariant4() + { + String expression=@" + DECLARE A,B; + A=1; + B=5; + ITERATIONS=0; + WHILE(A<=10) + { + B=1; + WHILE(B<=5) + { + B=B+1; + ITERATIONS=ITERATIONS+1; + } + A=A+1; + }"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("A").Equals(11)); + Assert.IsTrue(codeRunner.GetValue("ITERATIONS").Equals(50)); + } + + [TestMethod] + public void WhileStatementVariant3() + { + String expression=@" + DECLARE A,B; + A=1; + B=5; + WHILE(A("A").Equals(5)); + } + + [TestMethod] + public void WhileStatementVariant2() + { + String expression="DECLARE A,B;A=1;B=5;WHILE(A("A").Equals(5)); + } + + [TestMethod] + public void WhileStatementVariant1() + { + String expression="DECLARE A,B;A=1;B=5;WHILE(A("A").Equals(5)); + } + + [TestMethod] + public void DeclarationsVariant4() + { + String expression="DECLARE R,user_a,user_b,user_c;R=7;user_a=66;user_b=66;user_c=66;IF(R>=5){user_a=1;user_b=1;user_c=1;}"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + } + + [TestMethod] + public void DeclarationsVariant3() + { + String expression="DECLARE VAR1,VAR1;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsFalse(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.LastMessage.Contains("The variable 'VAR1' has already been declared.")); + } + + [TestMethod] + public void DeclarationsVariant2() + { + String expression="DECLARE VAR1,VAR2;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + } + + [TestMethod] + public void DeclarationsVariant1() + { + String expression="DECLARE VAR1;DECLARE VAR2;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + } + + [TestMethod] + public void LowerCall() + { + String expression="DECLARE VAR1;VAR1='Hello ';VAR1=TRIM(VAR1);VAR1=LOWER(VAR1);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("VAR1").Equals("hello")); + } + + [TestMethod] + public void UpperCall() + { + String expression="DECLARE VAR1;VAR1='Hello ';VAR1=TRIM(VAR1);VAR1=UPPER(VAR1);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("VAR1").Equals("HELLO")); + } + + [TestMethod] + public void TrimCall() + { + String expression="DECLARE VAR1;VAR1='Hello ';VAR1=TRIM(VAR1);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("VAR1").Equals("Hello")); + } + + [TestMethod] + public void IfStatementVariant20() + { + // There is a missing right paren in the if statement nesting so we expect a syntax error + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF((((((VAR1=='YES'))))) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsFalse(codeRunner.Execute(expression)); + Assert.IsTrue(codeRunner.LastMessage.Contains("")); + } + + [TestMethod] + public void IfStatementVariant19() + { + String expression = "DECLARE a,b;a=1;b=1;IF(1+1)upper('Foo');"; + CodeRunner codeRunner=new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.ParseSymbolsCount.Equals(0),"Expected parse symbols count to be zero."); + } + + [TestMethod] + public void IfStatementVariant18() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1=2;IF(VAR1==2) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant17() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF(VAR1=='YES') THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant16() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF((((((VAR1=='YES')))))) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant15() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF((VAR1=='YES') AND VAR2=='NO') THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("FALSE")); + } + + [TestMethod] + public void IfStatementVariant14() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=2;IF(VAR1=='YES' AND (VAR2=='YES') AND VAR4==1) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("FALSE")); + } + + [TestMethod] + public void IfStatementVariant13() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF(VAR1=='YES' AND (VAR2=='YES') AND VAR4==1) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant12() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF((VAR1=='YES') OR (VAR2=='YES') AND (VAR4==1)) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant11() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='NO';VAR2='YES';VAR4=1;IF(VAR1=='YES' OR VAR2=='YES' AND VAR4==2) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("FALSE")); + } + + [TestMethod] + public void IfStatementVariant10() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF(VAR1=='YES' OR VAR2=='YES' AND VAR4==2) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant9() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=2;IF(VAR1=='NO' OR (VAR2=='YES' AND VAR4==1)) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("FALSE")); + } + + [TestMethod] + public void IfStatementVariant8() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF(VAR1=='NO' OR (VAR2=='YES' AND VAR4==1)) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant7() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=2;IF((VAR1=='YES') AND VAR2=='NO' AND VAR4==1) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("FALSE")); + } + + [TestMethod] + public void IfStatementVariant6() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF((VAR1=='YES') AND VAR2=='NO' AND VAR4==1) THEN RESULT='TRUE' ELSE RESULT='FALSE';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("TRUE")); + } + + [TestMethod] + public void IfStatementVariant5() + { + String expression="DECLARE A,B,RESULT;A=1;B=2;IF(A==1 AND B==2)THEN RESULT=1 ELSE RESULT=0;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals(1.00)); + } + + [TestMethod] + public void IfStatementVariant4() + { + String expression="DECLARE A,B;A=99;if(A<>99)then B=1 else B=2;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("B").Equals(2.00)); + } + + [TestMethod] + public void IfStatementVariant3() + { + String expression="DECLARE R,user_a,user_b,user_c;R=7;user_a=66;user_b=66;user_c=66;IF(R>=5){user_a=1;user_b=1;user_c=1;}"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("user_a").Equals(1.00)); + Assert.IsTrue(codeRunner.GetValue("user_b").Equals(1.00)); + Assert.IsTrue(codeRunner.GetValue("user_c").Equals(1.00)); + } + + [TestMethod] + public void IfStatementVariant2() + { + String expression="DECLARE A,B,C;A=1;B=2;C=3;IF(B("A").Equals(1.00)); + Assert.IsTrue(codeRunner.GetValue("B").Equals(1.00)); + Assert.IsTrue(codeRunner.GetValue("C").Equals(1.00)); + } + + [TestMethod] + public void IfStatementVariant1() + { + String expression="R_THRESHHOLD=4;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + double b = codeRunner.GetValue("R_THRESHHOLD"); + Assert.IsTrue(b.Equals(4.00)); + } + + private class InjectionClass + { + public double RMultiple { get { return (CurrentPrice-PurchasePrice)/R; } } + public double CurrentPrice{ get; set; } + public double PurchasePrice{ get; set; } + public double R { get; set; } + } + + [TestMethod] + public void Injection() + { + String expression=@" + R_THRESHHOLD=4; + MAX_ATR=3; + MAX_R=10; + FACTOR=MAX_ATR/MAX_R; + MULTIPLIER=MAX_ATR; + IF(RMultiple>R_THRESHHOLD) + { + MULTIPLIER=FACTOR*RMultiple; + }"; + + InjectionClass injectionClass = new InjectionClass(); + injectionClass.CurrentPrice=220; + injectionClass.PurchasePrice=195.90; + injectionClass.R=5.00; + + CodeRunner codeRunner = new CodeRunner(); + SymbolTable symbolTable=codeRunner.SymbolTable; + symbolTable.AddObjects(new Object[]{injectionClass}.ToList()); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("MULTIPLIER").Equals(1.446)); + } + + [TestMethod] + public void Substring() + { + String expression="DECLARE CURRENCY,START_INDEX,LENGTH,CURRENCY_CODE;CURRENCY='MXN12345';START_INDEX=1;LENGTH=3;CURRENCY_CODE=SUBSTRING(CURRENCY,START_INDEX,LENGTH);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("CURRENCY_CODE").Equals("MXN")); + } + + [TestMethod] + public void InStatement() + { + String expression="DECLARE CURRENCY,A;CURRENCY='MXN';A=CURRENCY in('USD','JPY');"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("A").Equals(false)); + } + + [TestMethod] + public void InStatement2() + { + String expression="DECLARE CURRENCY,A;CURRENCY='MXN';A=CURRENCY in('USD','JPY','MXN');"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("A").Equals(true)); + } + + [TestMethod] + public void NestedParens() + { + String expression="DECLARE A,B,C;A=100/50;B=100-(((2*2)*8)*9);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("B").Equals(-188)); + } + + [TestMethod] + public void Power() + { + String expression="DECLARE A,B,C;A=100;B=.5;C=pow(A,B);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("C").Equals(10)); + } + + [TestMethod] + public void OrderOfOperations() + { + String expression="DECLARE NUM1;NUM1=3*4*(2+1)"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("NUM1").Equals(36)); + } + + [TestMethod] + public void NumericalEquality() + { + String expression="DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=20.00;if(2==2)then DELTA=.01 else DELTA=1.00;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("DELTA").Equals(.01)); + } + + [TestMethod] + public void Division() + { + String expression="DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=1000.00;DELTA=.25;DELTA_ADJUSTED_NOTIONAL=NOTIONAL/DELTA;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("DELTA_ADJUSTED_NOTIONAL").Equals(4000)); + } + + [TestMethod] + public void Addition() + { + String expression="DECLARE a,b,c;a=100;b=100+a;c=-100;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("b").Equals(200)); + } + + [TestMethod] + public void NullCoalescing() + { + String expression="DECLARE RESULT,A,B,C,D;A=null;B=null;C='NotNull';RESULT=ISNULL(A,B,C);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("NotNull")); + } + + [TestMethod] + public void DateComparisons() + { + String expression="DECLARE RESULT,A,B,C,D;A=CONVERT('01-01-2018','System.DateTime');B=CONVERT('01-02-2018','System.DateTime');IF(A>B) THEN RESULT='01-01-2018 IS GREATER THAN 01-02-2018' ELSE RESULT='01-02-2018 IS GREATER THAN 01-01-2018';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("RESULT").Equals("01-02-2018 IS GREATER THAN 01-01-2018")); + } + + [TestMethod] + public void StringMultiplication() + { + String expression="DECLARE A,B,C;A='45';B='2';C=A*B;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("C").Equals(90.00)); + } + + [TestMethod] + public void ExponentialNotation() + { + String expression="DECLARE OAC;OAC=-3.52E-05;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("OAC").Equals(-3.52E-05)); + } + + + [TestMethod] + public void StringConcatenation() + { + String expression="DECLARE ENTITY_ID,AXIOM_META_TAG;ENTITY_ID=148;IF(ENTITY_ID==148)THEN AXIOM_META_TAG=ENTITY_ID+'_BG' ELSE AXIOM_META_TAG=null;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("AXIOM_META_TAG").Equals("148_BG")); + } + + [TestMethod] + public void StringConcatenation2() + { + String expression="DECLARE A,B,C;A='45';B='2';C=A+B;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("C").Equals("452")); + } + + [TestMethod] + public void StringComparison() + { + String expression="DECLARE ENTITY_ID;ENTITY_ID='';IF(ENTITY_ID=='')THEN ENTITY_ID='ENTITY_ID IS BLANK'ELSE ENTITY_ID='ENTITY_ID IS NOT BLANK';"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("ENTITY_ID").Equals("ENTITY_ID IS BLANK")); + } + + [TestMethod] + public void DateConversion() + { + String expression="DECLARE ENTITY_ID,EFFECTIVE_DATE;ENTITY_ID=null;IF(ENTITY_ID==null)THEN EFFECTIVE_DATE=CONVERT('2/1/2024','System.DateTime');"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("EFFECTIVE_DATE").Equals(new DateTime(2024,2,1))); + } + + [TestMethod] + public void LikeClause() + { + String expression="DECLARE FIN.Securities.IndustryClass4,FIN.Securities.Country,FIN.Securities.ISIN;FIN.Securities.ISIN='ARARGE';IF(FIN.Securities.ISIN LIKE 'ARARGE'){FIN.Securities.IndustryClass4 = 'Treasury Bond';FIN.Securities.Country='USD'};"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("FIN.Securities.IndustryClass4").Equals("Treasury Bond")); + Assert.IsTrue(codeRunner.GetValue("FIN.Securities.Country").Equals("USD")); + } + + [TestMethod] + public void AbsoluteValueVariant2() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1=-1;VAR2=-3;VAR2=ABS(VAR2)+1;"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("VAR2").Equals(4)); + } + + [TestMethod] + public void AbsoluteValueVariant1() + { + String expression="DECLARE VAR1,VAR2,VAR4,RESULT;VAR1=((ABS(-1)+2)+3);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("VAR1").Equals(6)); + } + + [TestMethod] + public void Multiplication() + { + String expression="DECLARE var1,var2,var3,var4;var1=1;var2=2;var3=3;var4=var1*var2*var3*var1*var2*var3*abs(var1);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("var4").Equals(36.00)); + } + + [TestMethod] + public void AbsoluteValueConvesion() + { + String expression="DECLARE var1,var2,var3,var4;var1=-1;var2=-2;var3=-3;var4=abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2);"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("var4").Equals(4096.00)); + } + + + [TestMethod] + public void StringToDoubleConvesion() + { + String expression="DECLARE var1,var2,var3,var4;var1='2';var2='4';var3='6';var4=CONVERT(var1,'System.Double')*CONVERT(var2,'System.Double')*CONVERT(var3,'System.Double');"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("var1").Equals(2.00)); + } + + [TestMethod] + public void UpperCaseShouldConvert() + { + String expression="DECLARE var1,var2,var3,var4;var1='Hello';var2=' ';var3='World';var4=UPPER(var1)+UPPER(var2)+UPPER(var3)"; + CodeRunner codeRunner = new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.GetValue("var4").Equals("HELLO WORLD")); + } + + [TestMethod] + public void AssembleAllUseCases() + { + foreach(String expression in TestData.CodeLines()) + { + CodeRunner codeRunner= new CodeRunner(); + Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage); + Assert.IsTrue(codeRunner.ParseSymbolsCount.Equals(0),"Expected parse symbols to be zero."); + } + } + + //[TestMethod] + //public void AssembleAllData() + //{ + // List codeLines=TestData.CodeLines(); + // foreach(String expression in codeLines) + // { + // Console.WriteLine("*********************************************************************************************************************************"); + // BinaryWriter binaryWriter=new BinaryWriter(new MemoryStream()); + // SymbolTable symbolTable = new SymbolTable(); + // BinaryReader binaryReader = null; + // binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + // Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + // scanner.Debug=false; + // Console.WriteLine("Expression:\""+expression+"\""); + // Assert.IsTrue(scanner.Analyze()); + // binaryWriter.BaseStream.Seek(0, SeekOrigin.Begin); + // BinaryReader parserReader = new BinaryReader(binaryWriter.BaseStream); + // BinaryWriter parserWriter = new BinaryWriter(new MemoryStream()); + // Parser parser = new Parser(parserReader,parserWriter,symbolTable); + // parser.Debug=false; + // parser.Parse(); + // Assert.IsFalse(parser.IsInError); + // parserWriter.BaseStream.Seek(0, SeekOrigin.Begin); + // BinaryReader assemblerReader = new BinaryReader(parserWriter.BaseStream); + // Assembler assembler = new Assembler(assemblerReader, symbolTable); + // bool result=assembler.Assemble(); + // assembler.Disassemble(); + // Assert.IsTrue(result); + // Console.WriteLine("********************************************************* O U T P U T ************************************************"); + // List list = new List(symbolTable.Values); + // list=(from Symbol symbol in list where (symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserSymbol)||symbol.TypeOfSymbol.Equals(Symbol.SymbolType.UserDynamicSymbol)) && symbol.IsModified select symbol).ToList(); + // foreach (Symbol symbol in list) + // { + // Console.WriteLine(String.Format("SYMBOL NAME:'{0}',VALUE:'{1}'",symbol.SymbolName,null==symbol.GenericData?"":symbol.GenericData.ToString())); + // } + // Console.WriteLine("*********************************************************************************************************************************"); + // assembler.Dispose(); + // } + //} + } +} + diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/AxiomUnitTestProject.csproj b/AxiomUnitTestProject/AxiomUnitTestProjectr/AxiomUnitTestProject.csproj new file mode 100644 index 0000000..5759bfc --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/AxiomUnitTestProject.csproj @@ -0,0 +1,100 @@ + + + + Debug + AnyCPU + {E2FC10FA-2B8A-4CEB-B7C6-960FA6A3AC6F} + Library + Properties + AxiomUnitTestProjectr + AxiomUnitTestProjectr + v4.6.2 + 512 + {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + 10.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + $(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages + False + UnitTest + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + False + ..\..\References\MySql.Data.dll + + + + + + + + + + + + + + + + + + + + + + + + + {f0f0f2b4-bb86-49b5-ba93-2642637033d6} + Axiom.Core + + + + + + + + + + False + + + False + + + False + + + False + + + + + + + + \ No newline at end of file diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/ParserTests.cs b/AxiomUnitTestProject/AxiomUnitTestProjectr/ParserTests.cs new file mode 100644 index 0000000..662dfb0 --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/ParserTests.cs @@ -0,0 +1,37 @@ +using System; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System.Collections.Generic; +using Axiom.Utils; +using Axiom.Interpreter; +using System.IO; + +namespace AxiomUnitTestProject +{ + [TestClass] + public class ParserTests + { + [TestMethod] + public void ParserShouldParseAll() + { + List codeLines = TestData.CodeLines(); + foreach(String expression in codeLines) + { + BinaryWriter binaryWriter=new BinaryWriter(new MemoryStream()); + SymbolTable symbolTable = new SymbolTable(); + BinaryReader binaryReader = null; + binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + scanner.Debug=false; + Console.WriteLine("Expression:\""+expression+"\""); + Assert.IsTrue(scanner.Analyze()); + binaryWriter.BaseStream.Seek(0, SeekOrigin.Begin); + BinaryReader parserReader = new BinaryReader(binaryWriter.BaseStream); + BinaryWriter parserWriter = new BinaryWriter(new MemoryStream()); + Parser parser = new Parser(parserReader,parserWriter,symbolTable); + parser.Debug=true; + parser.Parse(); + Assert.IsFalse(parser.IsInError,parser.LastMessage); + } + } + } +} \ No newline at end of file diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/Properties/AssemblyInfo.cs b/AxiomUnitTestProject/AxiomUnitTestProjectr/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..1a6ab07 --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AxiomUnitTestProjectr")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AxiomUnitTestProjectr")] +[assembly: AssemblyCopyright("Copyright © 2024")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("d86be38f-cf72-4df8-a28e-c95922ecbadd")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/ScannerTests.cs b/AxiomUnitTestProject/AxiomUnitTestProjectr/ScannerTests.cs new file mode 100644 index 0000000..cacdd9e --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/ScannerTests.cs @@ -0,0 +1,30 @@ +using System; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System.Collections.Generic; +using Axiom.Utils; +using Axiom.Interpreter; +using System.IO; + +namespace AxiomUnitTestProject +{ + [TestClass] + public class ScannerTests + { + [TestMethod] + public void ScannerShouldScan() + { + List codeLines = TestData.CodeLines(); + foreach(String expression in codeLines) + { + BinaryWriter binaryWriter=new BinaryWriter(new MemoryStream()); + SymbolTable symbolTable = new SymbolTable(); + BinaryReader binaryReader = null; + binaryReader = new BinaryReader(Utility.StreamFromString(expression)); + Scanner scanner = new Scanner(binaryReader, binaryWriter, symbolTable); + Console.WriteLine("Expression:\""+expression+"\""); + Assert.IsTrue(scanner.Analyze()); + Console.WriteLine("**************************"); + } + } + } +} diff --git a/AxiomUnitTestProject/AxiomUnitTestProjectr/TestData.cs b/AxiomUnitTestProject/AxiomUnitTestProjectr/TestData.cs new file mode 100644 index 0000000..ded07d8 --- /dev/null +++ b/AxiomUnitTestProject/AxiomUnitTestProjectr/TestData.cs @@ -0,0 +1,94 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace AxiomUnitTestProject +{ + public class TestData + { + public static List CodeLines() + { + List codeLines = new List(); + codeLines.Add("DECLARE A,B;A=1;B=5;WHILE(A=5){user_a=1;user_b=1;user_c=1;}"); + codeLines.Add("DECLARE price,operation;operation='OPEN';price=GETPRICE('MIDD','07-12-2021',operation);"); + codeLines.Add("DECLARE var1,var2,var3,var4;var1='Hello';var2=' ';var3='World';var4=UPPER(var1)+UPPER(var2)+UPPER(var3)"); + codeLines.Add("DECLARE var1,var2,var3,var4;var1='2';var2='4';var3='6';var4=CONVERT(var1,'System.Double')+CONVERT(var2,'System.Double')+CONVERT(var3,'System.Double');"); + codeLines.Add("DECLARE var1,var2,var3,var4;var1='2';var2='4';var3='6';var4=CONVERT(var1,'System.Double')*CONVERT(var2,'System.Double')*CONVERT(var3,'System.Double');"); + codeLines.Add("DECLARE var1,var2,var3,var4;var1=-1;var2=-2;var3=-3;var4=abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2)*abs(var2);"); + codeLines.Add("DECLARE var1,var2,var3,var4;var1=1;var2=2;var3=3;var4=var1*var2*var3*var1*var2*var3*abs(var1);"); + codeLines.Add("DECLARE var1,var2,var3,var4;var1=1;var2=2;var3=3;var4=var1*var2*var3*var1*var2*var3;"); + codeLines.Add("DECLARE FIN.Securities.IndustryClass4,FIN.Securities.Country,FIN.Securities.ISIN;FIN.Securities.ISIN='ARARGE';IF(FIN.Securities.ISIN LIKE 'ARARGE'){FIN.Securities.IndustryClass4 = 'Treasury Bond';FIN.Securities.Country='USD'};"); + codeLines.Add("#directive_clear_modified;"); + codeLines.Add("DECLARE ENTITY_ID,EFFECTIVE_DATE;ENTITY_ID=null;IF(ENTITY_ID==null)THEN EFFECTIVE_DATE=CONVERT('1/1/1','System.DateTime');"); + codeLines.Add("DECLARE ENTITY_ID;ENTITY_ID='';IF(ENTITY_ID=='')THEN ENTITY_ID='ENTITY_ID IS BLANK'ELSE ENTITY_ID='ENTITY_ID IS NOT BLANK';"); + codeLines.Add("DECLARE ENTITY_ID,AXIOM_META_TAG;ENTITY_ID=148;IF(ENTITY_ID==148)THEN AXIOM_META_TAG=ENTITY_ID+'_BG' ELSE AXIOM_META_TAG=null;"); + codeLines.Add("DECLARE OAC;OAC=-3.52E-05;"); + codeLines.Add("DECLARE FIN.Analytics.OAD,LAND.STG_EC.SecurityIdentifier;FIN.Analytics.OAD=0.50;LAND.STG_EC.SecurityIdentifier = '397863';IF(LAND.STG_EC.SecurityIdentifier == '397863') THEN FIN.Analytics.OAD = FIN.Analytics.OAD*2.00;"); + codeLines.Add("DECLARE A,B;A=99;if(A<>99)then B=1 else B=2;"); + codeLines.Add("DECLARE A,B,C;A='45';B='2';C=A+B;"); // Ok, concatenation of two strings + codeLines.Add("DECLARE A,B,C;A='45';B='2';C=A*B;"); // Converts the strings to double and then performs the multiplication + codeLines.Add("DECLARE A,B,C,D;A='45';B='2';D='2';C=CONVERT(A,'System.Double')*CONVERT(B,'System.Double')*CONVERT(D,'System.Double');"); // Ok, multiplying numerical values + codeLines.Add("DECLARE A,B,C,D;A='45';B='2';D='2';C=CONVERT(A,'System.Double')*CONVERT(B,'System.Double')*2;"); // Ok, multiplying numerical values + codeLines.Add("DECLARE A,B,C,D;A='45';B='2';D='2';C=CONVERT(A,'System.Double')+CONVERT(B,'System.Double');"); // Ok, multiplying numerical values + codeLines.Add("DECLARE A,B,C,D;A='45';B='2';D='2';C=CONVERT(A,'System.Double')+CONVERT(B,'System.Double')+CONVERT(D,'System.Double');"); // Ok, multiplying numerical values + codeLines.Add("DECLARE RESULT,A,B,C,D;A=CONVERT('01-01-2018','System.DateTime');B=CONVERT('01-02-2018','System.DateTime');IF(A>B) THEN RESULT='01-01-2018 IS GREATER THAN 01-02-2018' ELSE RESULT='01-02-2018 IS GREATER THAN 01-01-2018';"); + codeLines.Add("DECLARE RESULT,A,B,C,D;A=null;B=null;C='NotNull';RESULT=ISNULL(A,B,C);"); + codeLines.Add("DECLARE a,b,c;a=100;b=100+a;c=-100;"); + codeLines.Add("DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=1000.00;DELTA=.2017;DELTA_ADJUSTED_NOTIONAL=NOTIONAL/DELTA;"); + codeLines.Add("DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=20;DELTA=100;DELTA_ADJUSTED_NOTIONAL=NOTIONAL/DELTA;"); + codeLines.Add("DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=20.00;if(NOTIONAL==20)then DELTA=.01 else DELTA=1.00;"); + codeLines.Add("DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=10.00;if(NOTIONAL<>20) then DELTA=.01 else DELTA=1.00;"); + codeLines.Add("DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=20.00;if(2==2)then DELTA=.01 else DELTA=1.00;"); + codeLines.Add("DECLARE NOTIONAL,DELTA,DELTA_ADJUSTED_NOTIONAL;NOTIONAL=20.00;if(3==2)then DELTA=.01 else DELTA=1.00;"); + codeLines.Add("DECLARE NUM1;NUM1=3*4*(2+1)"); + codeLines.Add("DECLARE A,B,C;A=2;B=.5;C=pow(A,B);"); + codeLines.Add("DECLARE A,B,C;A=100;IF(A<200) THEN B=1 ELSE B=0;"); + codeLines.Add("DECLARE A,B,C;A=CONVERT('03-10-2018','System.DateTime');"); + codeLines.Add("DECLARE A,B,C;A=CONVERT('2','System.Int32');B=CONVERT('3','System.Int32');"); + codeLines.Add("DECLARE A,B,C;A=100/50;B=100-(((2*2)*8)*9);"); + codeLines.Add("DECLARE A,B,C;A=abs(-50);"); + codeLines.Add("DECLARE A,B,C;A=abs(-50);"); + codeLines.Add("DECLARE A,B,C;A=99;"); + codeLines.Add("DECLARE A,B,C;A=CONVERT('2','System.Int32');B=CONVERT('2','System.Int32');IF(A==B)THEN C=1 ELSE C=2;"); + codeLines.Add("DECLARE CURRENCY,A;CURRENCY='MXN';A=CURRENCY in('USD','JPY');"); + codeLines.Add("DECLARE CURRENCY,RESULT;CURRENCY='MXN';if(CURRENCY in('USD','JPY','MXN'))THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE CURRENCY,RESULT;CURRENCY='MXN';if(CURRENCY LIKE '%MXN%') THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE CURRENCY,START_INDEX,LENGTH,CURRENCY_CODE;CURRENCY='MXN12345';START_INDEX=1;LENGTH=3;CURRENCY_CODE=SUBSTRING(CURRENCY,START_INDEX,LENGTH);"); + codeLines.Add("DECLARE IS_PRIMARY_LEG,SEC_ID,LEG;IS_PRIMARY_LEG='FALSE';SEC_ID='FXF12345678_1';LEG=SUBSTRING(SEC_ID,13,1);IF(LEG==1) THEN IS_PRIMARY_LEG='TRUE' ELSE IS_PRIMARY_LEG='FALSE';"); + codeLines.Add("DECLARE A,B;A=100/50;B=100-(((2*2)*8)*9);"); + codeLines.Add("DECLARE IS_PRIMARY_LEG,SEC_ID;IS_PRIMARY_LEG='FALSE';SEC_ID='FXF12345678_1';IF(SUBSTRING(SEC_ID,13,1)==1)THEN IS_PRIMARY_LEG='TRUE' ELSE IS_PRIMARY_LEG='FALSE';"); + codeLines.Add("DECLARE SEC_ID,B;SEC_ID='FXF12345678_1';B=SUBSTRING(SEC_ID,13,1);"); + codeLines.Add("DECLARE IS_PRIMARY_LEG,SEC_ID;IS_PRIMARY_LEG='FALSE';SEC_ID='FXF12345678_1';IF(SEC_ID LIKE '%_1')THEN IS_PRIMARY_LEG='TRUE' ELSE IS_PRIMARY_LEG='FALSE';"); + codeLines.Add("DECLARE IS_FX,SEC_ID;IS_FX='FALSE';SEC_ID='FXF12345678_1';IF(SEC_ID LIKE 'FXF2%' OR SEC_ID LIKE 'FXF1%')THEN IS_FX='TRUE' ELSE IS_FX='FALSE';"); + codeLines.Add("DECLARE A;A=2;"); + codeLines.Add("DECLARE A,B,C,D;A=2;B=0;C=9;IF(A==2 AND B==0 AND C==10) THEN D=1 ELSE D=0;"); + codeLines.Add("DECLARE LOCAL_AMT,SECURITY_ID,ENTRYCOST;LOCAL_AMT=50.00;SECURITY_ID='BP071917P1HY5';IF(SECURITY_ID in('BP071917P1HY5','BP071917P2HY5','BP071917P3HY5','BP071917P4HY5','BP071917P5HY5','BP071917P6HY5')) THEN ENTRYCOST=100.00 ELSE ENTRYCOST=LOCAL_AMT;"); + codeLines.Add("DECLARE A;A=null;"); + codeLines.Add("DECLARE A,B;A=1;B=2;IF(A==1){IF(B==2)THEN A=10 ELSE A=5;}else{A=3;B=4;}"); + codeLines.Add("DECLARE A,B,C;A=null;B='TRUE';C=ISNULL(A,B);"); + codeLines.Add("DECLARE A,B;A=1;B=2;IF(A==2)THEN B=100 ELSE B=200;"); + codeLines.Add("DECLARE AssetLevel1,IndustryClass4,RESULT;AssetLevel1='FUTURE';IndustryClass4='BOND_FUTURES';IF(AssetLevel1 like 'FUTURE' AND IndustryClass4=='BOND_FUTURES')THEN RESULT=1 ELSE RESULT=0;"); + codeLines.Add("DECLARE A,B,RESULT;A=1;B=2;IF(A==1 AND B==2)THEN RESULT=1 ELSE RESULT=0;"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF((VAR1=='YES') AND VAR2=='NO' AND VAR4==1) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF(VAR1=='NO' OR (VAR2=='YES' AND VAR4==1)) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF(VAR1=='YES' OR VAR2=='YES' AND VAR4==2) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF((VAR1=='YES') OR (VAR2=='YES') AND (VAR4==1)) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF(VAR1=='YES' AND (VAR2=='YES') AND VAR4==1) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='YES';VAR4=1;IF((VAR1=='YES') AND VAR2=='NO') THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF((VAR1=='YES') AND VAR2=='NO') THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF((((((VAR1=='YES')))))) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1='YES';VAR2='NO';VAR4=1;IF(VAR1=='YES') THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1=2;IF(VAR1==2) THEN RESULT='TRUE' ELSE RESULT='FALSE';"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1=((ABS(-1)+2)+3);"); + codeLines.Add("DECLARE VAR1,VAR2,VAR4,RESULT;VAR1=-1;VAR2=-3;VAR2=ABS(VAR2)+1;"); + codeLines.Add("DECLARE A,B,C;A=1;B=2;C=3;IF(B>A){A=0;B=0;C=0;}ELSE{A=1;B=1;C=1;}"); + codeLines.Add("DECLARE A,B,C;A=1;B=2;C=3;IF(B + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Configs/STAGE/Janus.AxiomConsole.exe.config b/Configs/STAGE/Janus.AxiomConsole.exe.config new file mode 100644 index 0000000..43d44f7 --- /dev/null +++ b/Configs/STAGE/Janus.AxiomConsole.exe.config @@ -0,0 +1,70 @@ + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Notes.txt b/Notes.txt new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..4173dd3 --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +# Axiom + +## A rules engine for processing overrides. + diff --git a/References/MarketDataLib.dll b/References/MarketDataLib.dll new file mode 100644 index 0000000000000000000000000000000000000000..0b04341865a4cae7652f307b9bff40cbd1f62311 GIT binary patch literal 1136640 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

7)&SelVbqi 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�yJOus! z;`?^qtt0+*oZ~vnMlmzCtv6G zQfRSZXKTw)%NBtCspV3tycDZQYcpAd69 zl#*7e=BXQI({Bx{1^IZYJMndN{o?#L()HWu`ah>n`xt@b?W991l>2{=7pHD}L7vxtwwKShobLyep1f~*iqq%zSw-D$yU9Y|9v_~Cwkm9J;z{q59K4VH2|X@`7z=M0{o z!0-1-s-*kA3+JhQ&_650`;_8c-0n{-lX#P$`OpGr5h<@rUI5RBz5-neeGU2s^s41@ zUs{v${B##-#rlmR?p`A+Z#;Aw^m*t@&^Ms(LN`N8pa-EpLoYz9ye{b{LF+@CLvMy= zL5Dyehdu+H4_)Ils0TftE2P~HLG>HL^`N&wheDgYpJ` z-!7|_`p2bo|JTTU9MnX@2mNj(UFY%-Y%aQk_(=+X8rLsfE7vng+5h_xI4Dn$PO#3~ z|F(n={MF~d!G2`YJ7T{9+7+5Z%ImD)xd`Urw(BH(f2g-!+Fjb0!V`1(Tafa2^dR&R z=yuqpoU)F5d8phMR$hm*@_OWD@_7XL2lWb`$93;YKHortebe)JZhy!1+V63=7HSqL zkBdQiRW?Zcp#2*Xv;9_5e!lvUa`_`SDs_(9zb+})>lSEVFwya5K z4&Imau7}kg+f z&JG+d_j%y(^7|0<+i4$5_~3b61YQ?hhyDzW{6xYhLYtBDeS4jh@8gHi;C_$ZCidy1 zT&{)Cjkx}eW9g3#=~;ihMA8Z3Zzbk>9wz1Z!S$g0?|druJ)~?u1C9Dj_$p{S(u(~s z7`HlZm-s_SxgPnXoX*S84bZQlze0oOGFb0d{X*iUK)aH1eh-my`JZtr_k+*V@cZv4 z*LdpQFD2Y)Xc2TJbO-b_DVHl~&mKGF`3Tw}XqTW~xn$@3gLSFola=?JyPlP|47vgO z1@tTE0q7Cv38(*hpW}B)K0!J7J%P(PoUXG5{d6ffxWC=Ll6DzQ%H=E~|4c0{s!1ceD@iTazxP_S0y%(AbodbOX8uZVL@8?$7zlD}TuN6QNC@9iVqZdqM|5M?)t<3!w9%Z$UqReg!>5%JbGK(!>PX z4kbr0Fq0eL6VkbUlWc?Lq%5Am;ua zaI=GwEsin~ z&>)?~hopQfpzlGyf*vE~{AAoNpC4)-mU<>agZtH(n8UY#2J6ln!M8$hhjxN?f!+%p z1`Y1>qu_k#Oz1-B8t5kIC(y&tU_SaC9Q}ioGai}^_nL*Uio|Bq#rqaRvv$I_T$T{sn81^$z`e3fR4?(-cfonk%p+SAyg1bV4=Z)v>u9pY*zq}s&Ueon* znYY;<^!H#~Yjj%j53c`sM*2%&5Bo*hvkvrTXm99vQtn4@LO;g!{ZL&d@#p_4D(3_} z^&T@_l`ul-qxsyIxK000-p`=95={m-w4W`S~sd{{f9VD|X&T z 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%0Do? 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%0ACA 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%0D`IR`` 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 literal 0 HcmV?d00001