internal MSAst.Expression /*!*/ DeleteIndex(MSAst.Expression /*!*/[] /*!*/ expressions) { return(CompilationMode.Dynamic( PyContext.DeleteIndex( expressions.Length ), typeof(void), expressions )); }
internal MSAst.Expression /*!*/ Delete(Type /*!*/ resultType, string /*!*/ name, MSAst.Expression /*!*/ target) { return(CompilationMode.Dynamic( PyContext.DeleteMember( name ), resultType, target )); }
internal MSAst.Expression /*!*/ SetIndex(MSAst.Expression /*!*/[] /*!*/ expressions) { return(new PythonDynamicExpressionN( PyContext.SetIndex( expressions.Length - 1 ), CompilationMode, expressions )); }
internal MSAst.Expression /*!*/ Set(string /*!*/ name, MSAst.Expression /*!*/ target, MSAst.Expression /*!*/ value) { return(new PythonDynamicExpression2( PyContext.SetMember( name ), CompilationMode, target, value )); }
internal MSAst.Expression/*!*/ Invoke(CallSignature signature, params MSAst.Expression/*!*/[]/*!*/ args) { PythonInvokeBinder invoke = PyContext.Invoke(signature); switch (args.Length) { case 1: return GlobalParent.CompilationMode.Dynamic(invoke, typeof(object), args[0]); case 2: return GlobalParent.CompilationMode.Dynamic(invoke, typeof(object), args[0], args[1]); case 3: return GlobalParent.CompilationMode.Dynamic(invoke, typeof(object), args[0], args[1], args[2]); case 4: return GlobalParent.CompilationMode.Dynamic(invoke, typeof(object), args[0], args[1], args[2], args[3]); default: return GlobalParent.CompilationMode.Dynamic( invoke, typeof(object), args ); } }
private void ReloadCode() { _ctx?.Dispose(); _ctx = null; var mod = new PyModule("Flumin", _moduleDef); try { _ctx = PyContext.FromCode(_code, new[] { mod }); DisplayPythonError(null); } catch (PyException e) { DisplayPythonError(e); Parent.Context.Notify(new GraphNotification(this, GraphNotification.NotificationType.Error, "Error in python code: " + e.Message)); } if (_ctx != null) { GetPortDefs(); } }
internal MSAst.Expression /*!*/ Convert(Type /*!*/ type, ConversionResultKind resultKind, MSAst.Expression /*!*/ target) { if (resultKind == ConversionResultKind.ExplicitCast) { return(new DynamicConvertExpression( PyContext.Convert( type, resultKind ), CompilationMode, target )); } return(CompilationMode.Dynamic( PyContext.Convert( type, resultKind ), type, target )); }
internal MSAst.Expression /*!*/ Get(string /*!*/ name, MSAst.Expression /*!*/ target) { return(new DynamicGetMemberExpression(PyContext.GetMember(name), _mode, target, LocalContext)); }