void initInputFrame ( final ClassWriter cw , final int access , final Type [ ] args , final int maxLocals ) { inputLocals = new int [ maxLocals ] ; inputStack = new int [ 0 ] ; int i = 0 ; if ( ( access & Opcodes . ACC_STATIC ) == 0 ) { if ( ( access & MethodWriter . ACC_CONSTRUCTOR ) == 0 ) { inputLocals [ i ++ ] = OBJECT | cw . addType ( cw . thisName ) ; } else { inputLocals [ i ++ ] = UNINITIALIZED_THIS ; } } for ( int j = 0 ; j < args . length ; ++ j ) { int t = type ( cw , args [ j ] . getDescriptor ( ) ) ; inputLocals [ i ++ ] = t ; if ( t == LONG || t == DOUBLE ) { inputLocals [ i ++ ] = TOP ; } } while ( i < maxLocals ) { inputLocals [ i ++ ] = TOP ; } }
Initializes the input frame of the first basic block from the method descriptor .