Example #1
0
        private void AddEnumTypes(Assembly asm)
        {
            var enumTypes = asm.GetTypes().Where(t => t.IsEnum && t.IsPublic);

            foreach (var t in enumTypes)
            {
                if (EnumTypeNames.Contains(t.Name))
                {
                    throw new MpdnScriptEngineException(string.Format("Conflicting enum types detected: {0}", t.Name));
                }
                Engine.AddHostType(t.Name, t);
                EnumTypeNames.Add(t.Name);
            }
        }
        public ScriptEngine()
        {
            FilterTypeNames = new HashSet<string>();
            EnumTypeNames = new HashSet<string>();
            m_Engine = new JScriptEngine(WindowsScriptEngineFlags.EnableDebugging) {AllowReflection = true};
            m_Engine.AddHostType("Debug", typeof (Debug));

            AddEnumTypes(Assembly.GetAssembly(typeof (IRenderScript)));
            var asm = Assembly.GetExecutingAssembly();
            AddRenderScriptTypes(asm);
            AddEnumTypes(asm);
        }
Example #3
0
        public ScriptEngine()
        {
            FilterTypeNames = new HashSet<string>();
            EnumTypeNames = new HashSet<string>();
            m_Engine = new JScriptEngine(WindowsScriptEngineFlags.EnableDebugging) {AllowReflection = true};
            m_Engine.AddHostType("Debug", typeof (Debug));

            AddEnumTypes(Assembly.GetAssembly(typeof (IRenderScript)));
            foreach (var asm in (Extension.RenderScripts.Select(s => s.GetType().Assembly)
                .Concat(new[] {typeof (RenderChain.RenderChain).Assembly})).Distinct())
            {
                AddRenderScriptTypes(asm);
                AddEnumTypes(asm);
            }
        }
Example #4
0
        private void ExposeTypesToEngine(Microsoft.ClearScript.ScriptEngine engine)
        {
            var typeCollection = new HostTypeCollection(
                typeof(com.espertech.esper.client.EPAdministrator).Assembly);

            engine.AddHostObject("esper", typeCollection);
            engine.AddHostType("Object", typeof(Object));
            engine.AddHostType("typeHelper", typeof(com.espertech.esper.util.TypeHelper));
            engine.AddHostType("Collections", typeof(com.espertech.esper.compat.collections.Collections));
            engine.AddHostType("EventBean", typeof(com.espertech.esper.client.EventBean));
            engine.AddHostType("EventBean", typeof(com.espertech.esper.client.EventBean));
            engine.AddHostType("EPAdministrator", typeof(com.espertech.esper.client.EPAdministrator));
            engine.AddHostType("EPRuntime", typeof(com.espertech.esper.client.EPRuntime));
        }
        public ScriptEngine()
        {
            FilterTypeNames = new HashSet <string>();
            EnumTypeNames   = new HashSet <string>();
            m_Engine        = new JScriptEngine(WindowsScriptEngineFlags.EnableDebugging)
            {
                AllowReflection = true
            };
            m_Engine.AddHostType("Debug", typeof(Debug));

            AddEnumTypes(Assembly.GetAssembly(typeof(IRenderScript)));
            var asm = Assembly.GetExecutingAssembly();

            AddRenderScriptTypes(asm);
            AddEnumTypes(asm);
        }
Example #6
0
        protected ScriptEngine()
        {
            FilterTypeNames = new HashSet <string>();
            EnumTypeNames   = new HashSet <string>();
            Engine          = new JScriptEngine {
                AllowReflection = true
            };
            Engine.AddHostType("Debug", typeof(Debug));

            AddEnumTypes(Assembly.GetAssembly(typeof(IScript)));
            foreach (var asm in Extension.Scripts.Select(s => s.GetType().Assembly)
                     .Concat(new[] { typeof(TChain).Assembly }).Distinct())
            {
                AddScriptTypes(asm);
                AddEnumTypes(asm);
            }
        }