/* s e t u p C o n s t r a i n t  */
returnValue Constraints_setupConstraint(Constraints *_THIS, int number, SubjectToStatus _status)
/* s e t u p C o n s t r a i n t  */
returnValue Constraints_setupConstraint(Constraints *_THIS, int number, SubjectToStatus _status)
{
	if ( ( number < 0 ) || ( number >= _THIS->n ) )
		return THROWERROR( RET_INDEX_OUT_OF_BOUNDS );
	switch ( _status )
	{
		case ST_INACTIVE:
			if ( Constraints_addIndex( _THIS,Constraints_getInactive( _THIS ),number,_status ) != SUCCESSFUL_RETURN )
				return THROWERROR( RET_SETUP_CONSTRAINT_FAILED );
			break;
		case ST_LOWER:
			if ( Constraints_addIndex( _THIS,Constraints_getActive( _THIS ),number,_status ) != SUCCESSFUL_RETURN )
				return THROWERROR( RET_SETUP_CONSTRAINT_FAILED );
			break;
		case ST_UPPER:
			if ( Constraints_addIndex( _THIS,Constraints_getActive( _THIS ),number,_status ) != SUCCESSFUL_RETURN )
				return THROWERROR( RET_SETUP_CONSTRAINT_FAILED );
			break;
		default:
			return THROWERROR( RET_INVALID_ARGUMENTS );
	}
	return SUCCESSFUL_RETURN;
}