Ejemplo n.º 1
0
        internal bool TryGetValueSource(
            IValueDescriptor valueDescriptor,
            out IValueSource valueSource)
        {
            foreach (var symbol in ParseResult.ValueDescriptors())
            {
                if (ValueDescriptor.CanBind(
                        from: symbol,
                        to: valueDescriptor))
                {
                    valueSource = new SymbolValueSource((ISymbol)symbol);

                    return(true);
                }
            }

            if (ServiceProvider.AvailableServiceTypes.Contains(valueDescriptor.Type))
            {
                valueSource = new ServiceProviderValueSource();
                return(true);
            }

            valueSource = null;
            return(false);
        }
Ejemplo n.º 2
0
        internal bool TryGetValueSource(
            IValueDescriptor valueDescriptor,
            [MaybeNullWhen(false)] out IValueSource valueSource)
        {
            if (ServiceProvider.AvailableServiceTypes.Contains(valueDescriptor.ValueType))
            {
                valueSource = new ServiceProviderValueSource();
                return(true);
            }

            valueSource = default !;
Ejemplo n.º 3
0
        internal bool TryGetValueSource(
            IValueDescriptor valueDescriptor,
            out IValueSource valueSource)
        {
            if (ServiceProvider.AvailableServiceTypes.Contains(valueDescriptor.Type))
            {
                valueSource = new ServiceProviderValueSource();
                return(true);
            }

            valueSource = null;
            return(false);
        }