Find the source code here:
https://github.com/mohammadzainabbas/student-in-postgres
Learn about some basic requirements of creating a base type in C language:
https://www.postgresql.org/docs/13/xfunc-c.html
Documentation about some built-in errors reporting:
https://www.postgresql.org/docs/13/error-message-reporting.html
Documentation about creating your type in SQL:
https://www.postgresql.org/docs/13/sql-createtype.html
Documentation about creating your function in SQL:
https://www.postgresql.org/docs/13/sql-createfunction.html
Documentation about the "control" file:
https://www.postgresql.org/docs/current/extend-extensions.html#id-1.8.3.20.11