public ParameterDescription(IParameterSymbol parameter)
 {
     Name       = parameter.Name;
     Type       = SyntaxTools.GetFullName(parameter.Type);
     TypeSymbol = parameter.Type;
     IsOut      = parameter.IsOut();
     IsRef      = parameter.IsRef();
 }
Пример #2
0
 public MethodDescription(IMethodSymbol source)
 {
     Source           = source;
     Name             = source.Name;
     ReturnType       = SyntaxTools.GetFullName(source.ReturnType);
     ReturnTypeSymbol = source.ReturnType;
     TypeArguments    = source.TypeArguments.Select(SyntaxTools.GetFullName).ToArray();
     Parameters       = source.Parameters.Select(i => new ParameterDescription(i)).ToArray();
 }
        public ContractDescription(INamedTypeSymbol serviceType)
        {
            Interfaces = new List <InterfaceDescription>();
            Services   = new List <InterfaceDescription>();

            AnalyzeServiceAndInterfaces(serviceType);
            FindDuplicates();

            BaseClassName           = GetBaseClassName(serviceType);
            ClientClassName         = BaseClassName + "Client";
            ClientBuilderClassName  = BaseClassName + "ClientBuilder";
            ContractClassName       = BaseClassName + "Contract";
            EndpointClassName       = BaseClassName + "Endpoint";
            EndpointBinderClassName = BaseClassName + "EndpointBinder";

            ContractInterfaceName = SyntaxTools.GetFullName(serviceType);
            ContractInterface     = serviceType;
            SortAll();
        }
 public InterfaceDescription(INamedTypeSymbol interfaceType)
 {
     InterfaceType     = interfaceType;
     InterfaceTypeName = SyntaxTools.GetFullName(interfaceType);
 }
 public void GetFullName(ITypeSymbol type, string expected)
 {
     SyntaxTools.GetFullName(type).ShouldBe(expected);
 }