Никак. Но если вам достаточно, чтобы функцию bar() не вызвали в лоб, её нужно обозвать приватной. Ну либо передавать объект в явном виде в параметрах, и обеспечивать видимость требуемых полей снаружи класса.
MaxKorz, вам стоит почитать об инкапсуляции в нормальных ООП языках, конкретно о ключевых словах private, protected и public. То, что вы дописали префикс private к названию функции, не делает ее приватной. И вопрос был все-таки про метод класса. Обычную функцию можно просто не экспортировать из модуля.