cextern/cfitsio/lib/eval_l.c
/* ff_get_previous_state - get the state just before the EOB char was reached */
get the state just before the EOB char was reached
get the state just before the EOB char was reached
static ff_state_type ff_get_previous_state (void)
{
	register ff_state_type ff_current_state;
	register char *ff_cp;
	ff_current_state = (ff_start);
	for ( ff_cp = (fftext_ptr) + FF_MORE_ADJ; ff_cp < (ff_c_buf_p); ++ff_cp )
		{
		register FF_CHAR ff_c = (*ff_cp ? ff_ec[FF_SC_TO_UI(*ff_cp)] : 1);
		if ( ff_accept[ff_current_state] )
			{
			(ff_last_accepting_state) = ff_current_state;
			(ff_last_accepting_cpos) = ff_cp;
			}
		while ( ff_chk[ff_base[ff_current_state] + ff_c] != ff_current_state )
			{
			ff_current_state = (int) ff_def[ff_current_state];
			if ( ff_current_state >= 160 )
				ff_c = ff_meta[(unsigned int) ff_c];
			}
		ff_current_state = ff_nxt[ff_base[ff_current_state] + (unsigned int) ff_c];
		}
	return ff_current_state;
}
static ff_state_type ff_get_previous_state ( void ) { register ff_state_type ff_current_state ; register char * ff_cp ; ff_current_state = ( ff_start ) ; for ( ff_cp = ( fftext_ptr ) + FF_MORE_ADJ ; ff_cp < ( ff_c_buf_p ) ; ++ ff_cp ) { register FF_CHAR ff_c = ( * ff_cp ? ff_ec [ FF_SC_TO_UI ( * ff_cp ) ] : 1 ) ; if ( ff_accept [ ff_current_state ] ) { ( ff_last_accepting_state ) = ff_current_state ; ( ff_last_accepting_cpos ) = ff_cp ; } while ( ff_chk [ ff_base [ ff_current_state ] + ff_c ] != ff_current_state ) { ff_current_state = ( int ) ff_def [ ff_current_state ] ; if ( ff_current_state >= 160 ) ff_c = ff_meta [ ( unsigned int ) ff_c ] ; } ff_current_state = ff_nxt [ ff_base [ ff_current_state ] + ( unsigned int ) ff_c ] ; } return ff_current_state ; }
ff_get_previous_state - get the state just before the EOB char was reached
ff_get_previous_state - get the state just before the EOB char was reached