Example #1
0
        public static DynValue tmpfile(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            string           tmpfilename = Script.GlobalOptions.Platform.IO_OS_GetTempFilename();
            FileUserDataBase file        = Open(executionContext, tmpfilename, GetUTF8Encoding(), "w");

            return(UserData.Create(file));
        }
Example #2
0
        public static DynValue flush(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            FileUserDataBase outp = args.AsUserData <FileUserDataBase>(0, "close", true) ?? GetDefaultFile(executionContext, StandardFileType.StdOut);

            outp.flush();
            return(DynValue.True);
        }
Example #3
0
		public static DynValue type(ScriptExecutionContext executionContext, CallbackArguments args)
		{
			if (args[0].Type != DataType.UserData)
				return DynValue.Nil;

			FileUserDataBase file = args[0].UserData.Object as FileUserDataBase;

			if (file == null)
				return DynValue.Nil;
			else if (file.isopen())
				return DynValue.NewString("file");
			else
				return DynValue.NewString("closed file");
		}
Example #4
0
		private static void SetStandardFile(Script S, StandardFileType file, Stream optionsStream)
		{
			Table R = S.Registry;

			optionsStream = optionsStream ?? Script.GlobalOptions.Platform.IO_GetStandardStream(file);

			FileUserDataBase udb = null;

			if (file == StandardFileType.StdIn)
				udb = StandardIOFileUserDataBase.CreateInputStream(optionsStream);
			else
				udb = StandardIOFileUserDataBase.CreateOutputStream(optionsStream);

			R.Set("853BEAAF298648839E2C99D005E1DF94_STD_" + file.ToString(), UserData.Create(udb));
		}
Example #5
0
        private static DynValue HandleDefaultStreamSetter(ScriptExecutionContext executionContext, CallbackArguments args, StandardFileType defaultFiles)
        {
            if (args.Count == 0 || args[0].IsNil())
            {
                var file = GetDefaultFile(executionContext, defaultFiles);
                return(UserData.Create(file));
            }

            FileUserDataBase inp = null;

            if (args[0].Type == DataType.String || args[0].Type == DataType.Number)
            {
                string fileName = args[0].CastToString();
                inp = Open(executionContext, fileName, GetUTF8Encoding(), defaultFiles == StandardFileType.StdIn ? "r" : "w");
            }
            else
            {
                inp = args.AsUserData <FileUserDataBase>(0, defaultFiles == StandardFileType.StdIn ? "input" : "output", false);
            }

            SetDefaultFile(executionContext, defaultFiles, inp);

            return(UserData.Create(inp));
        }
Example #6
0
        public static DynValue write(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            FileUserDataBase file = GetDefaultFile(executionContext, StandardFileType.StdOut);

            return(file.write(executionContext, args));
        }
Example #7
0
        internal static void SetDefaultFile(Script script, StandardFileType file, FileUserDataBase fileHandle)
        {
            Table R = script.Registry;

            R.Set("853BEAAF298648839E2C99D005E1DF94_" + file.ToString(), UserData.Create(fileHandle));
        }
Example #8
0
 static void SetDefaultFile(ScriptExecutionContext executionContext, StandardFileType file, FileUserDataBase fileHandle)
 {
     SetDefaultFile(executionContext.GetScript(), file, fileHandle);
 }
Example #9
0
        public static DynValue close(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            FileUserDataBase outp = args.AsUserData <FileUserDataBase>(0, "close", true) ?? GetDefaultFile(executionContext, DefaultFiles.Out);

            return(outp.close(executionContext, args));
        }
Example #10
0
        static void SetDefaultFile(ScriptExecutionContext executionContext, DefaultFiles file, FileUserDataBase fileHandle)
        {
            Table R = executionContext.GetScript().Registry;

            R.Set("853BEAAF298648839E2C99D005E1DF94_" + file.ToString(), UserData.Create(fileHandle));
        }
Example #11
0
        public static DynValue tmpfile(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            FileUserDataBase file = Open(System.IO.Path.GetTempFileName(), GetUTF8Encoding(), "w");

            return(UserData.Create(file));
        }
Example #12
0
        public static DynValue read(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            FileUserDataBase file = GetDefaultFile(executionContext, DefaultFiles.In);

            return(file.read(executionContext, args));
        }
Example #13
0
		public static DynValue read(ScriptExecutionContext executionContext, CallbackArguments args)
		{
			FileUserDataBase file = GetDefaultFile(executionContext, StandardFileType.StdIn);
			return file.read(executionContext, args);
		}
Example #14
0
        public static DynValue close(ScriptExecutionContext executionContext, CallbackArguments args)
        {
            FileUserDataBase outp = args.AsUserData <FileUserDataBase>(0, "startGame", true) ?? GetDefaultFile(executionContext, StandardFileType.StdOut);

            return(outp.close(executionContext, args));
        }