public virtual Name GetName() { if (parts.Count == 1) { var obj = ObjectSearcher.SearchIdentifier <INamedEntity>(currentScore, (parts[0] as Part.SelectedPart).Suffix, x => true); return(new SimpleName(obj)); } else if (parts.Count > 1) { var objs = ObjectSearcher.SearchComponents <INamedEntity>(currentScore, parts); Name suffix = new SimpleName(objs[objs.Count - 1]); for (int i = objs.Count - 2; i >= 0; --i) { Name prefix = new SimpleName(objs[i]); suffix = new SelectedName(prefix, suffix); } return(suffix); } throw new VHDL.ParseError.vhdlUnknownIdentifierException(context, visitor.FileName, Identifier); }
private List <T> resolveAll <T>(IDeclarativeRegion scope) where T : class { return(ObjectSearcher.SearchAll <T>(scope, parts).Distinct().ToList()); }
private T resolve <T>(IDeclarativeRegion scope) where T : class { return(ObjectSearcher.Search <T>(scope, parts)); }
// not yet used .. just for debugging .. private Version GetLatestVersion(int Vid, ObjectContext context) { ObjectSearcher<Version> _versionSearcher = new ObjectSearcher<Version>(context); List<Version> _selectedReportVersions = new List<Version>(); int Pid = -1; foreach (Version v in _versionSearcher.FindAll()) { if (v.VersionIRID == Vid) { Pid = v.ParentIRID; } } foreach (Version v in _versionSearcher.FindAll()) { if (v.ParentIRID == Pid) { _selectedReportVersions.Add(v); } } Version _parentVersion = _selectedReportVersions[0]; Version _latestVersion = _selectedReportVersions[(_selectedReportVersions.Count - 1)]; _latestVersion.VersionNumber++; Console.WriteLine("ParentVersion " + _parentVersion.ParentIRID + " " + _parentVersion.VersionIRID); Console.WriteLine("LatestVersion " + _latestVersion.ParentIRID + " " + _latestVersion.VersionIRID); return _latestVersion; }