basic_ifstream implementation