public override ISourceElement Locate() { var typeNode = new TypeNodeLocator(_root, _syntax.Type).Locate() as TypeNode; if (typeNode == null) { throw new SourceLinkLocateException($"Could not Locate TypeNode: { _syntax.Type }"); } return(typeNode.GetMembers(_syntax.Identifier.Identifier) .OfType <FieldMember>().Single(x => TypeStructureComparer.CompareTypes(x.Identifier, _syntax.Identifier))); }
public override ISourceElement Locate() { var typeNode = new TypeNodeLocator(_root, _syntax.Type).Locate() as TypeNode; if (typeNode == null) { throw new SourceLinkLocateException($"Could not Locate TypeNode: { _syntax.Type }"); } // TODO: Fix this to work with explicitly implemented properties! return(typeNode.GetMembers(_syntax.Identifier.Identifier) .OfType <PropertyMember>() .Single(x => TypeStructureComparer.CompareTypes(x.Identifier, _syntax.Identifier))); }
public override ISourceElement Locate() { var typeNode = new TypeNodeLocator(_root, _syntax.Type).Locate() as TypeNode; if (typeNode == null) { throw new SourceLinkLocateException($"Could not Locate TypeNode: { _syntax.Type }"); } return(typeNode .GetMembers(_syntax.Identifier.Identifier) .OfType <MethodMember>() .Single(x => (x?.TypeArguments?.Length ?? 0) == _syntax.TypeArguments && MethodArgumentsAreEqual(x.Parameters))); }