2_i32
это целочисленный литерал типа i32 со значением 2:
- “_” это разделитель, который можно вставлять в любое место числа (тут он использован, что бы визуально отделить значение от суффикса)
- “i32” это опциональный суффикс, явно обозначающий тип (тут он неоходим, потому что pow метод реализован для конкретных типов и без него была бы ошибка E0689)
https://doc.rust-lang.org/reference/tokens.html#integer-literals