예제 #1
0
        public TIntermediateParameter Add(TypedName parameterInfo)
        {
            LockCheckAndThrow();
            var paramKind = IntermediateGateway.AdjustParameterType(parameterInfo, this.Parent);

            return(this.Add(parameterInfo.Name, paramKind, parameterInfo.Direction));
        }
예제 #2
0
 public TIntermediateParameter[] AddRange(params TypedName[] parameterInfo)
 {
     LockCheckAndThrow();
     if (parameterInfo == null)
     {
         throw new ArgumentNullException("parameterInfo");
     }
     TIntermediateParameter[] result = new TIntermediateParameter[parameterInfo.Length];
     for (int i = 0; i < parameterInfo.Length; i++)
     {
         var currentParamInfo = parameterInfo[i];
         var paramType        = IntermediateGateway.AdjustParameterType(currentParamInfo, this.Parent);
         result[i] = this.GetNewParameter(currentParamInfo.Name, paramType, currentParamInfo.Direction);
     }
     foreach (var element in result)
     {
         this._Add(element.UniqueIdentifier, element);
     }
     return(result);
 }
 public IIndexerSignatureReferenceExpression <TIndexer, TIndexerParent> GetReference(IMemberParentReferenceExpression source, IEnumerable <IExpression> parameters)
 {
     return(IntermediateGateway.GetIndexerSignatureReference <TIndexer, TIndexerParent>(((TIndexer)(object)(this)), source, parameters));
 }
 IPropertyReferenceExpression IIntermediatePropertySignatureMember.GetReference(IMemberParentReferenceExpression source)
 {
     return(IntermediateGateway.GetPropertyReference(this, source));
 }
 IPropertyReferenceExpression IIntermediatePropertySignatureMember.GetReference(IMemberParentReferenceExpression source)
 {
     return(IntermediateGateway.GetPropertySignatureReference <TProperty, TPropertyParent>(((TProperty)(object)(this)), source));
 }