Geting IntegerLiteral Value using Libclang

Hi All:
I’m currently using the python binding of Libclang to parse a c file.
This is the AST tree generated by using
clang -Xclang -ast-dump -fsyntax-only

ArraySubscriptExpr 0x694a138 <col:75, col:118> 'U32':'unsigned int' lvalue
|-ImplicitCastExpr 0x694a120 <col:75, col:87> 'U32 *' <ArrayToPointerDecay>
| `-MemberExpr 0x694a0b0 <col:75, col:87> 'U32 [16]' lvalue .param_ptr 0x5fa4598
|   `-DeclRefExpr 0x694a090 <col:75> 'KERNEL_INFO_STRUCT':'struct kernel_info_struct' lvalue Var 0x6946578 'gKernelInfo' 'KERNEL_INFO_STRUCT':'struct kernel_info_struct'
`-ParenExpr 0x694a100 <line:69:41, col:44> 'unsigned int'
  `-IntegerLiteral 0x694a0e0 <col:42> 'unsigned int' 2 

I would like to obtain the last integer value(In this example is 2).

I’m aware that there is an APNumeric::getIntValue() function in c++
However, I’m struggling to find a usable function in Libclang.

Is there any good method to fetch integer values using only Libclang?
Or do I have to consider using the c++ interface directly?