Ejemplo n.º 1
0
        private static IodineConfiguration LoadConfiguration()
        {
            if (IsUnix())
            {
                if (File.Exists("/etc/iodine.conf"))
                {
                    return(IodineConfiguration.Load("/etc/iodine.conf"));
                }
            }
            string exePath       = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
            string commonAppData = Environment.GetFolderPath(
                Environment.SpecialFolder.CommonApplicationData
                );
            string appData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

            if (File.Exists(Path.Combine(exePath, "iodine.conf")))
            {
                return(IodineConfiguration.Load(Path.Combine(exePath, "iodine.conf")));
            }

            if (File.Exists(Path.Combine(commonAppData, "iodine.conf")))
            {
                return(IodineConfiguration.Load(Path.Combine(commonAppData, "iodine.conf")));
            }

            if (File.Exists(Path.Combine(appData, "iodine.conf")))
            {
                return(IodineConfiguration.Load(Path.Combine(appData, "iodine.conf")));
            }

            return(new IodineConfiguration()); // If we can't find a configuration file, load the default
        }
Ejemplo n.º 2
0
        public IodineContext(IodineConfiguration config)
        {
            Configuration  = config;
            ErrorLog       = new ErrorSink();
            VirtualMachine = new VirtualMachine(this);

            var modules = BuiltInModules.Modules.Values.Where(p => p.ExistsInGlobalNamespace);

            foreach (IodineModule module in modules)
            {
                foreach (KeyValuePair <string, IodineObject> value in module.Attributes)
                {
                    Globals [value.Key] = value.Value;
                }
            }
        }
Ejemplo n.º 3
0
 public IodineContext(IodineConfiguration config)
 {
     Configuration  = config;
     ErrorLog       = new ErrorLog();
     VirtualMachine = new VirtualMachine(this);
 }