public void Build(string source) { if (_netlistRepository.Exists(source)) { return; } var netlistFileReader = _netlistFileReaderProvider.GetReaderFor(source); var buildState = new BuildState { NetlistSource = source }; try { _netlistRepository.Add(new Netlist(source)); while ((buildState.CurrentStatementTrimmed = netlistFileReader.ReadTrimmedStatement()) != null) { _statementHandlersInvoker.Handle(buildState); } } catch (Exception e) { throw e; } finally { netlistFileReader.Close(); } _instancesTypeUpdater.UpdateInstancesType(source); }
public void Remove(string source) { if (!_netlistRepository.Exists(source)) { return; } _netlistRepository.Remove(source); _moduleRepository.RemoveAll(source); _instanceRepository.RemoveAll(source); }