| /** | 
|  * This function takes one parameter and just returns it. Simply put, | 
|  * this is like `<T>(x: T): T => x`. | 
|  * | 
|  * ## Examples | 
|  * | 
|  * This is useful in some cases when using things like `mergeMap` | 
|  * | 
|  * ```ts | 
|  * import { interval, take, map, range, mergeMap, identity } from 'rxjs'; | 
|  * | 
|  * const source$ = interval(1000).pipe(take(5)); | 
|  * | 
|  * const result$ = source$.pipe( | 
|  *   map(i => range(i)), | 
|  *   mergeMap(identity) // same as mergeMap(x => x) | 
|  * ); | 
|  * | 
|  * result$.subscribe({ | 
|  *   next: console.log | 
|  * }); | 
|  * ``` | 
|  * | 
|  * Or when you want to selectively apply an operator | 
|  * | 
|  * ```ts | 
|  * import { interval, take, identity } from 'rxjs'; | 
|  * | 
|  * const shouldLimit = () => Math.random() < 0.5; | 
|  * | 
|  * const source$ = interval(1000); | 
|  * | 
|  * const result$ = source$.pipe(shouldLimit() ? take(5) : identity); | 
|  * | 
|  * result$.subscribe({ | 
|  *   next: console.log | 
|  * }); | 
|  * ``` | 
|  * | 
|  * @param x Any value that is returned by this function | 
|  * @returns The value passed as the first parameter to this function | 
|  */ | 
| export function identity<T>(x: T): T { | 
|   return x; | 
| } |