32 lines
753 B
Python
32 lines
753 B
Python
import sys
|
|
import os
|
|
|
|
def iscontroller(obj):
|
|
return getattr(obj, 'exposed', False)
|
|
|
|
def _cfg(f):
|
|
if not hasattr(f, '_pecan'): f._pecan = {}
|
|
return f._pecan
|
|
|
|
def compat_splitext(path):
|
|
"""
|
|
This method emulates the behavior os.path.splitext introduced in python 2.6
|
|
"""
|
|
basename = os.path.basename(path)
|
|
|
|
index = basename.rfind('.')
|
|
if index > 0:
|
|
root = basename[:index]
|
|
if root.count('.') != index:
|
|
return (os.path.join(os.path.dirname(path), root), basename[index:])
|
|
|
|
return (path, '')
|
|
|
|
# use the builtin splitext unless we're python 2.5
|
|
if sys.version_info >= (2,6):
|
|
from os.path import splitext
|
|
else: #pragma no cover
|
|
splitext = compat_splitext
|
|
|
|
|