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 }
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; } } }
public IodineContext(IodineConfiguration config) { Configuration = config; ErrorLog = new ErrorLog(); VirtualMachine = new VirtualMachine(this); }