From 62a03a5caced14929a3b77740ffa16f097b8fa2e Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 26 Mar 2014 01:20:49 +0000 Subject: Also take YP/commented out JS references from script engine CodeTools. Fixes build break from d3387d591a2bd496c8315f17b2310d6a6f40a7c3 --- .../ScriptEngine/Shared/CodeTools/Compiler.cs | 40 ------- .../Shared/CodeTools/YP2CSConverter.cs | 117 --------------------- 2 files changed, 157 deletions(-) delete mode 100644 OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs (limited to 'OpenSim/Region/ScriptEngine/Shared') diff --git a/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs b/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs index a1b8d85..b4640ef 100644 --- a/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs +++ b/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs @@ -85,9 +85,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools private static CSharpCodeProvider CScodeProvider = new CSharpCodeProvider(); private static VBCodeProvider VBcodeProvider = new VBCodeProvider(); -// private static JScriptCodeProvider JScodeProvider = new JScriptCodeProvider(); - private static CSharpCodeProvider YPcodeProvider = new CSharpCodeProvider(); // YP is translated into CSharp - private static YP2CSConverter YP_Converter = new YP2CSConverter(); // private static int instanceID = new Random().Next(0, int.MaxValue); // Unique number to use on our compiled files private static UInt64 scriptCompileCounter = 0; // And a counter @@ -404,12 +401,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools WriteMapFile(assembly + ".map", linemap); } - if (language == enumCompileType.yp) - { - // Its YP, convert it to C# - compileScript = YP_Converter.Convert(Script); - } - switch (language) { case enumCompileType.cs: @@ -424,13 +415,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools compileScript = CreateVBCompilerScript( compileScript, m_scriptEngine.ScriptClassName, m_scriptEngine.ScriptBaseClassName); break; -// case enumCompileType.js: -// compileScript = CreateJSCompilerScript(compileScript, m_scriptEngine.ScriptBaseClassName); -// break; - case enumCompileType.yp: - compileScript = CreateYPCompilerScript( - compileScript, m_scriptEngine.ScriptClassName,m_scriptEngine.ScriptBaseClassName); - break; } assembly = CompileFromDotNetText(compileScript, language, asset, assembly); @@ -488,22 +472,6 @@ namespace SecondLife return compileScript; } - private static string CreateYPCompilerScript(string compileScript, string className, string baseClassName) - { - compileScript = String.Empty + - "using OpenSim.Region.ScriptEngine.Shared.YieldProlog; " + - "using OpenSim.Region.ScriptEngine.Shared; using System.Collections.Generic;\r\n" + - String.Empty + "namespace SecondLife { " + - String.Empty + "public class " + className + " : " + baseClassName + " { \r\n" + - //@"public Script() { } " + - @"static OpenSim.Region.ScriptEngine.Shared.YieldProlog.YP YP=null; " + - @"public " + className + "() { YP= new OpenSim.Region.ScriptEngine.Shared.YieldProlog.YP(); } " + - compileScript + - "} }\r\n"; - - return compileScript; - } - private static string CreateVBCompilerScript(string compileScript, string className, string baseClassName) { compileScript = String.Empty + @@ -635,14 +603,6 @@ namespace SecondLife } } while (!complete); break; -// case enumCompileType.js: -// results = JScodeProvider.CompileAssemblyFromSource( -// parameters, Script); -// break; - case enumCompileType.yp: - results = YPcodeProvider.CompileAssemblyFromSource( - parameters, Script); - break; default: throw new Exception("Compiler is not able to recongnize " + "language type \"" + lang.ToString() + "\""); diff --git a/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs b/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs deleted file mode 100644 index 7ea3cfc..0000000 --- a/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs +++ /dev/null @@ -1,117 +0,0 @@ -/* -* Copyright (c) Contributors, http://opensimulator.org/ -* See CONTRIBUTORS.TXT for a full list of copyright holders. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* * Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* * Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* * Neither the name of the OpenSimulator Project nor the -* names of its contributors may be used to endorse or promote products -* derived from this software without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -*/ - -using System; -using System.IO; -using System.Collections.Generic; -using System.Text; -using System.Text.RegularExpressions; -using OpenSim.Region.ScriptEngine.Shared.YieldProlog; - -namespace OpenSim.Region.ScriptEngine.Shared.CodeTools -{ - public class YP2CSConverter - { - public YP2CSConverter() - { - } - - public string Convert(string Script) - { - string CS_code = GenCode(Script); - return CS_code; - } - - static string GenCode(string myCode) - { - Variable TermList = new Variable(); - Variable FunctionCode = new Variable(); - - string CS_code = ""; - - int cs_pointer = myCode.IndexOf("\n//cs"); - if (cs_pointer > 0) - { - CS_code = myCode.Substring(cs_pointer); // CS code comes after - myCode = myCode.Substring(0, cs_pointer); - } - myCode.Replace("//yp", "%YPCode"); - - StringWriter myCS_SW = new StringWriter(); - StringReader myCode_SR = new StringReader(" yp_nop_header_nop. \n "+myCode + "\n"); - - YP.see(myCode_SR); - YP.tell(myCS_SW); - - //m_log.Debug("Mycode\n ===================================\n" + myCode+"\n"); - -// disable warning: don't see how we can code this differently short -// of rewriting the whole thing -#pragma warning disable 0168, 0219 - foreach (bool l1 in Parser.parseInput(TermList)) - { - foreach (bool l2 in YPCompiler.makeFunctionPseudoCode(TermList, FunctionCode)) - { - // ListPair VFC = new ListPair(FunctionCode, new Variable()); - //m_log.Debug("-------------------------") - //m_log.Debug(FunctionCode.ToString()) - //m_log.Debug("-------------------------") - YPCompiler.convertFunctionCSharp(FunctionCode); - //YPCompiler.convertStringCodesCSharp(VFC); - } - } -#pragma warning restore 0168, 0219 - YP.seen(); - myCS_SW.Close(); - YP.told(); - StringBuilder bu = myCS_SW.GetStringBuilder(); - string finalcode = "//YPEncoded\n" + bu.ToString(); - // FIX script events (we're in the same script) - // 'YP.script_event(Atom.a(@"sayit"),' ==> 'sayit(' - finalcode = Regex.Replace(finalcode, - @"YP.script_event\(Atom.a\(\@\""(.*?)""\)\,", - @"this.$1(", - RegexOptions.Compiled | RegexOptions.Singleline); - finalcode = Regex.Replace(finalcode, - @"YP.script_event\(Atom.a\(\""(.*?)""\)\,", - @"this.$1(", - RegexOptions.Compiled | RegexOptions.Singleline); - finalcode = Regex.Replace(finalcode, - @" static ", - @" ", - RegexOptions.Compiled | RegexOptions.Singleline); - - finalcode = CS_code+"\n\r"+ finalcode; - finalcode = Regex.Replace(finalcode, - @"PrologCallback", - @"public IEnumerable ", - RegexOptions.Compiled | RegexOptions.Singleline); - return finalcode; - } - } -} -- cgit v1.1