private FormulaEngine(SerializationInfo info, StreamingContext context)
 {
     DependencyManager    = (DependencyManager)info.GetValue("DependencyManager", typeof(DependencyManager));
     ReferencePool        = (ReferencePool)info.GetValue("ReferencePool", typeof(ReferencePool));
     _referenceFormulaMap = (IDictionary)info.GetValue("ReferenceFormulaMap", typeof(IDictionary));
     Sheets           = (SheetCollection)info.GetValue("SheetManager", typeof(SheetCollection));
     FunctionLibrary  = (FunctionLibrary)info.GetValue("FunctionLibrary", typeof(FunctionLibrary));
     Info             = new FormulaEngineInfo(this);
     ReferenceFactory = new ReferenceFactory(this);
     Settings         = new FormulaParserSettings();
     Parser           = CreateParser();
 }
 public FormulaEngine(FormulaParserSettings settings = null)
 {
     _referenceFormulaMap = new Hashtable();
     FunctionLibrary      = new FunctionLibrary(this);
     DependencyManager    = new DependencyManager(this);
     ReferenceFactory     = new ReferenceFactory(this);
     ReferencePool        = new ReferencePool(this);
     Sheets   = new SheetCollection(this);
     Info     = new FormulaEngineInfo(this);
     Settings = settings ?? new FormulaParserSettings();
     Parser   = CreateParser();
 }