Stored Procedure Function Oracle PLSQL

SQL>
SQL>
SQL> CREATE TYPE MyType AS OBJECT (
  2    field1 NUMBER,
  3    field2 VARCHAR2(50));
  4  /
SQL>
SQL> CREATE or replace TYPE MyTypeList AS TABLE OF MyType;
  2  /
Type created.
SQL>
SQL> CREATE OR REPLACE FUNCTION PipelineMe
  2    RETURN MyTypeList PIPELINED AS
  3    v_MyType MyType;
  4  BEGIN
  5    FOR v_Count IN 1..20 LOOP
  6      v_MyType := MyType(v_Count, 'Row ' || v_Count);
  7      PIPE ROW(v_MyType);
  8    END LOOP;
  9    RETURN;
 10  END PipelineMe;
 11  /
Function created.
SQL>
SQL> SELECT *
  2    FROM TABLE(PipelineMe);
    FIELD1 FIELD2
---------- --------------------------------------------------
         1 Row 1
         2 Row 2
         3 Row 3
         4 Row 4
         5 Row 5
         6 Row 6
         7 Row 7
         8 Row 8
         9 Row 9
        10 Row 10
        11 Row 11
        12 Row 12
        13 Row 13
        14 Row 14
        15 Row 15
        16 Row 16
        17 Row 17
        18 Row 18
        19 Row 19
        20 Row 20
20 rows selected.
SQL>
SQL> DROP TYPE MyType;
SQL>
SQL>