mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 19:34:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
"""A more or less complete dictionary like interface for the RISC OS environment."""
 | 
						|
 | 
						|
import riscos
 | 
						|
 | 
						|
class _Environ:
 | 
						|
    def __init__(self, initial = None):
 | 
						|
        pass
 | 
						|
    def __repr__(self):
 | 
						|
        return repr(riscos.getenvdict())
 | 
						|
    def __cmp__(self, dict):
 | 
						|
        return cmp(riscos.getenvdict(), dict)
 | 
						|
    def __len__(self):
 | 
						|
        return len(riscos.getenvdict())
 | 
						|
    def __getitem__(self, key):
 | 
						|
        ret = riscos.getenv(key)
 | 
						|
        if ret<>None:
 | 
						|
            return ret
 | 
						|
        else:
 | 
						|
            raise KeyError
 | 
						|
    def __setitem__(self, key, item):
 | 
						|
        riscos.putenv(key, item)
 | 
						|
    def __delitem__(self, key):
 | 
						|
        riscos.delenv(key)
 | 
						|
    def clear(self):
 | 
						|
        # too dangerous on RISC OS
 | 
						|
        pass
 | 
						|
    def copy(self):
 | 
						|
        return riscos.getenvdict()
 | 
						|
    def keys(self): return riscos.getenvdict().keys()
 | 
						|
    def items(self): return riscos.getenvdict().items()
 | 
						|
    def values(self): return riscos.getenvdict().values()
 | 
						|
    def has_key(self, key):
 | 
						|
        value = riscos.getenv(key)
 | 
						|
        return value<>None
 | 
						|
    def update(self, dict):
 | 
						|
        for k, v in dict.items():
 | 
						|
            riscos.putenv(k, v)
 | 
						|
    def get(self, key, failobj=None):
 | 
						|
        value = riscos.getenv(key)
 | 
						|
        if value<>None:
 | 
						|
            return value
 | 
						|
        else:
 | 
						|
            return failobj
 |