コード例 #1
0
ファイル: RQNodeBuilder.cs プロジェクト: yourina/roslyn
        private static RQEvent BuildEvent(IEventSymbol symbol)
        {
            var containingType = BuildNamedType(symbol.ContainingType);

            if (containingType == null)
            {
                return(null);
            }

            RQMethodPropertyOrEventName name = RQOrdinaryMethodPropertyOrEventName.CreateOrdinaryEventName(symbol.Name);

            if (symbol.ExplicitInterfaceImplementations.Any())
            {
                if (symbol.ExplicitInterfaceImplementations.Length > 1)
                {
                    return(null);
                }

                name = new RQExplicitInterfaceMemberName(BuildType(symbol.ExplicitInterfaceImplementations.Single().ContainingType as ITypeSymbol), (RQOrdinaryMethodPropertyOrEventName)name);
            }

            return(new RQEvent(containingType, name));
        }
コード例 #2
0
ファイル: RQEvent.cs プロジェクト: Rickinio/roslyn
 public RQEvent(RQUnconstructedType containingType, RQMethodPropertyOrEventName memberName)
     : base(containingType, memberName)
 { }
コード例 #3
0
ファイル: RQEvent.cs プロジェクト: isadorasophia/roslyn-kyle
 public RQEvent(RQUnconstructedType containingType, RQMethodPropertyOrEventName memberName)
     : base(containingType, memberName)
 {
 }