| using Jace.Execution; | 
| using System; | 
| using System.Collections.Generic; | 
| using System.Globalization; | 
| using System.Text; | 
|   | 
| namespace Jace | 
| { | 
|     public class JaceOptions | 
|     { | 
|         internal const int DefaultCacheMaximumSize = 500; | 
|         internal const int DefaultCacheReductionSize = 50; | 
|   | 
|         public JaceOptions() | 
|         { | 
|             CultureInfo = CultureInfo.CurrentCulture; | 
|             ExecutionMode = ExecutionMode.Compiled; | 
|             CacheEnabled = true; | 
|             OptimizerEnabled = true; | 
|             CaseSensitive = false; | 
|             DefaultFunctions = true; | 
|             DefaultConstants = true; | 
|             CacheMaximumSize = DefaultCacheMaximumSize; | 
|             CacheReductionSize = DefaultCacheReductionSize; | 
|         } | 
|   | 
|         /// <summary> | 
|         /// The <see cref="CultureInfo"/> required for correctly reading floating poin numbers. | 
|         /// </summary> | 
|         public CultureInfo CultureInfo { get; set; } | 
|   | 
|         /// <summary> | 
|         /// The execution mode that must be used for formula execution. | 
|         /// </summary> | 
|         public ExecutionMode ExecutionMode { get; set; } | 
|   | 
|         /// <summary> | 
|         /// Enable or disable caching of mathematical formulas. | 
|         /// </summary> | 
|         public bool CacheEnabled { get; set; } | 
|   | 
|         /// <summary> | 
|         /// Configure the maximum cache size for mathematical formulas. | 
|         /// </summary> | 
|         public int CacheMaximumSize { get; set; } | 
|   | 
|         /// <summary> | 
|         /// Configure the cache reduction size for mathematical formulas. | 
|         /// </summary> | 
|         public int CacheReductionSize { get; set; } | 
|   | 
|         /// <summary> | 
|         /// Enable or disable optimizing of formulas. | 
|         /// </summary> | 
|         public bool OptimizerEnabled { get; set; } | 
|   | 
|         /// <summary> | 
|         /// Enable or disable converting to lower case. This parameter is the inverse of <see cref="CaseSensitive"/>. | 
|         /// </summary> | 
|         [Obsolete] | 
|         public bool AdjustVariableCase {  | 
|             get | 
|             { | 
|                 return !CaseSensitive; | 
|             } | 
|             set | 
|             { | 
|                 CaseSensitive = !value; | 
|             } | 
|         } | 
|   | 
|         /// <summary> | 
|         /// Enable case sensitive or case insensitive processing mode. | 
|         /// </summary> | 
|         public bool CaseSensitive { get;  set; } | 
|   | 
|         /// <summary> | 
|         /// Enable or disable the default functions. | 
|         /// </summary> | 
|         public bool DefaultFunctions { get; set; } | 
|   | 
|         /// <summary> | 
|         /// Enable or disable the default constants. | 
|         /// </summary> | 
|         public bool DefaultConstants { get; set; } | 
|     } | 
| } |