Defining a struct in Toy Defining a struct in MLIR Defining the Type Class Exposing to ODS Parsing and Printing Operating on StructType In the previous chapter, we demonstrated an end-to-end compilation flow from our Toy front-end to LLVM IR. In this chapter, we will extend the Toy language to support a new composite struct type. Defining a struct in Toy The first thing we need to define is the interface of this type in our toy source language.