Expression\BuiltinFunctions.cs (159)
146return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<R8>(Pi));
149return FunctionProviderUtils.Ret(
150FunctionProviderUtils.Fn<R4, R4>(NA),
151FunctionProviderUtils.Fn<R8, R8>(NA));
153return FunctionProviderUtils.Ret(
154FunctionProviderUtils.Fn<I4, I4>(Default),
155FunctionProviderUtils.Fn<I8, I8>(Default),
156FunctionProviderUtils.Fn<R4, R4>(Default),
157FunctionProviderUtils.Fn<R8, R8>(Default),
158FunctionProviderUtils.Fn<BL, BL>(Default),
159FunctionProviderUtils.Fn<TX, TX>(Default));
162return FunctionProviderUtils.Ret(
163FunctionProviderUtils.Fn<I4, I4>(Math.Abs),
164FunctionProviderUtils.Fn<I8, I8>(Math.Abs),
165FunctionProviderUtils.Fn<R4, R4>(Math.Abs),
166FunctionProviderUtils.Fn<R8, R8>(Math.Abs));
168return FunctionProviderUtils.Ret(
169FunctionProviderUtils.Fn<I4, I4>(Sign),
170FunctionProviderUtils.Fn<I8, I8>(Sign),
171FunctionProviderUtils.Fn<R4, R4>(Sign),
172FunctionProviderUtils.Fn<R8, R8>(Sign));
174return FunctionProviderUtils.Ret(
175FunctionProviderUtils.Fn<R4, R4>(Exp),
176FunctionProviderUtils.Fn<R8, R8>(Math.Exp));
178return FunctionProviderUtils.Ret(
179FunctionProviderUtils.Fn<R4, R4>(Log),
180FunctionProviderUtils.Fn<R8, R8>(Math.Log));
182return FunctionProviderUtils.Ret(
183FunctionProviderUtils.Fn<R4, R4>(Log),
184FunctionProviderUtils.Fn<R8, R8>(Math.Log),
185FunctionProviderUtils.Fn<R4, R4, R4>(Log),
186FunctionProviderUtils.Fn<R8, R8, R8>(Math.Log));
190return FunctionProviderUtils.Ret(
191FunctionProviderUtils.Fn<R4, R4>(Deg),
192FunctionProviderUtils.Fn<R8, R8>(Deg));
195return FunctionProviderUtils.Ret(
196FunctionProviderUtils.Fn<R4, R4>(Rad),
197FunctionProviderUtils.Fn<R8, R8>(Rad));
200return FunctionProviderUtils.Ret(
201FunctionProviderUtils.Fn<R4, R4>(Sin),
202FunctionProviderUtils.Fn<R8, R8>(Sin));
204return FunctionProviderUtils.Ret(
205FunctionProviderUtils.Fn<R4, R4>(SinD),
206FunctionProviderUtils.Fn<R8, R8>(SinD));
208return FunctionProviderUtils.Ret(
209FunctionProviderUtils.Fn<R4, R4>(Cos),
210FunctionProviderUtils.Fn<R8, R8>(Cos));
212return FunctionProviderUtils.Ret(
213FunctionProviderUtils.Fn<R4, R4>(CosD),
214FunctionProviderUtils.Fn<R8, R8>(CosD));
216return FunctionProviderUtils.Ret(
217FunctionProviderUtils.Fn<R4, R4>(Tan),
218FunctionProviderUtils.Fn<R8, R8>(Math.Tan));
220return FunctionProviderUtils.Ret(
221FunctionProviderUtils.Fn<R4, R4>(TanD),
222FunctionProviderUtils.Fn<R8, R8>(TanD));
225return FunctionProviderUtils.Ret(
226FunctionProviderUtils.Fn<R4, R4>(Asin),
227FunctionProviderUtils.Fn<R8, R8>(Math.Asin));
229return FunctionProviderUtils.Ret(
230FunctionProviderUtils.Fn<R4, R4>(Acos),
231FunctionProviderUtils.Fn<R8, R8>(Math.Acos));
233return FunctionProviderUtils.Ret(
234FunctionProviderUtils.Fn<R4, R4>(Atan),
235FunctionProviderUtils.Fn<R8, R8>(Math.Atan));
238return FunctionProviderUtils.Ret(
239FunctionProviderUtils.Fn<R4, R4, R4>(Atan2),
240FunctionProviderUtils.Fn<R8, R8, R8>(Atan2));
243return FunctionProviderUtils.Ret(
244FunctionProviderUtils.Fn<R4, R4>(Sinh),
245FunctionProviderUtils.Fn<R8, R8>(Math.Sinh));
247return FunctionProviderUtils.Ret(
248FunctionProviderUtils.Fn<R4, R4>(Cosh),
249FunctionProviderUtils.Fn<R8, R8>(Math.Cosh));
251return FunctionProviderUtils.Ret(
252FunctionProviderUtils.Fn<R4, R4>(Tanh),
253FunctionProviderUtils.Fn<R8, R8>(Math.Tanh));
256return FunctionProviderUtils.Ret(
257FunctionProviderUtils.Fn<R4, R4>(Sqrt),
258FunctionProviderUtils.Fn<R8, R8>(Math.Sqrt));
262return FunctionProviderUtils.Ret(
263FunctionProviderUtils.Fn<R4, R4>(Truncate),
264FunctionProviderUtils.Fn<R8, R8>(Math.Truncate));
266return FunctionProviderUtils.Ret(
267FunctionProviderUtils.Fn<R4, R4>(Floor),
268FunctionProviderUtils.Fn<R8, R8>(Math.Floor));
271return FunctionProviderUtils.Ret(
272FunctionProviderUtils.Fn<R4, R4>(Ceiling),
273FunctionProviderUtils.Fn<R8, R8>(Math.Ceiling));
275return FunctionProviderUtils.Ret(
276FunctionProviderUtils.Fn<R4, R4>(Round),
277FunctionProviderUtils.Fn<R8, R8>(Math.Round));
280return FunctionProviderUtils.Ret(
281FunctionProviderUtils.Fn<I4, I4, I4>(Math.Min),
282FunctionProviderUtils.Fn<I8, I8, I8>(Math.Min),
283FunctionProviderUtils.Fn<R4, R4, R4>(Math.Min),
284FunctionProviderUtils.Fn<R8, R8, R8>(Math.Min));
286return FunctionProviderUtils.Ret(
287FunctionProviderUtils.Fn<I4, I4, I4>(Math.Max),
288FunctionProviderUtils.Fn<I8, I8, I8>(Math.Max),
289FunctionProviderUtils.Fn<R4, R4, R4>(Math.Max),
290FunctionProviderUtils.Fn<R8, R8, R8>(Math.Max));
293return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<TX, I4>(Len));
295return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<TX, TX>(Lower));
297return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<TX, TX>(Upper));
299return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<TX, I4, TX>(Right));
301return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<TX, I4, TX>(Left));
303return FunctionProviderUtils.Ret(FunctionProviderUtils.Fn<TX, I4, I4, TX>(Mid));
306return FunctionProviderUtils.Ret(
307FunctionProviderUtils.Fn<TX>(Empty),
309FunctionProviderUtils.Fn<TX, TX, TX>(Concat),
310FunctionProviderUtils.Fn<TX, TX, TX, TX>(Concat),
311FunctionProviderUtils.Fn<TX[], TX>(Concat));
314return FunctionProviderUtils.Ret(
315FunctionProviderUtils.Fn<R4, BL>(IsNA),
316FunctionProviderUtils.Fn<R8, BL>(IsNA));
319return FunctionProviderUtils.Ret(
320FunctionProviderUtils.Fn<TX, BL>(ToBL),
323return FunctionProviderUtils.Ret(
324FunctionProviderUtils.Fn<I8, I4>(Convert.ToInt32),
325FunctionProviderUtils.Fn<R4, I4>(Convert.ToInt32),
326FunctionProviderUtils.Fn<R8, I4>(Convert.ToInt32),
327FunctionProviderUtils.Fn<BL, I4>(Convert.ToInt32),
328FunctionProviderUtils.Fn<TX, I4>(ToI4),
331return FunctionProviderUtils.Ret(
332FunctionProviderUtils.Fn<I4, I8>(Convert.ToInt64),
333FunctionProviderUtils.Fn<R4, I8>(Convert.ToInt64),
334FunctionProviderUtils.Fn<R8, I8>(Convert.ToInt64),
335FunctionProviderUtils.Fn<BL, I8>(Convert.ToInt64),
336FunctionProviderUtils.Fn<TX, I8>(ToI8),
340return FunctionProviderUtils.Ret(
341FunctionProviderUtils.Fn<I4, R4>(Convert.ToSingle),
342FunctionProviderUtils.Fn<I8, R4>(Convert.ToSingle),
343FunctionProviderUtils.Fn<R4, R4>(ToR4),
344FunctionProviderUtils.Fn<R8, R4>(ToR4),
345FunctionProviderUtils.Fn<BL, R4>(Convert.ToSingle),
346FunctionProviderUtils.Fn<TX, R4>(ToR4));
348return FunctionProviderUtils.Ret(
349FunctionProviderUtils.Fn<I4, R8>(Convert.ToDouble),
350FunctionProviderUtils.Fn<I8, R8>(Convert.ToDouble),
351FunctionProviderUtils.Fn<R4, R8>(ToR8),
352FunctionProviderUtils.Fn<R8, R8>(ToR8),
353FunctionProviderUtils.Fn<BL, R8>(Convert.ToDouble),
354FunctionProviderUtils.Fn<TX, R8>(ToR8));
356return FunctionProviderUtils.Ret(
357FunctionProviderUtils.Fn<I4, TX>(ToTX),
358FunctionProviderUtils.Fn<I8, TX>(ToTX),
359FunctionProviderUtils.Fn<R4, TX>(ToTX),
360FunctionProviderUtils.Fn<R8, TX>(ToTX),
361FunctionProviderUtils.Fn<BL, TX>(ToTX),
414if (FunctionProviderUtils.IsNA(values[i]))
417return FunctionProviderUtils.GetNA(fn.ReturnType);