func init // adds using namespace sys.add_use('System.IO') sys.add_use('System.ComponentModel') // initialize a member if(not isdef('Name')) sys.add_var(this.name, 'FileAccess') blk_init.println(this.codename, ' = ', this.FileAccess(), ';') end // initialize parser sys._se_init('Parse', 'FileAccess', 'FileAccess') end func _se_make(value) return('(FileAccess)Enum.Parse(typeof(FileAccess), ' + d('Value') + ')') end func doMembers() blk.println('foreach (object item in TypeDescriptor.GetConverter(typeof(FileAccess)).GetStandardValues()) {').inc() event('onMembers', 'item') blk.dec().println('}') end func FileAccess() v = this.props('FileAccess').value flags = ((v _and_ 1) ? '|FileAccess.Read' : '') + ((v _and_ 2) ? '|FileAccess.Write' : '') + ((v _and_ 4) ? '|FileAccess.ReadWrite' : '') return('(0' + flags + ')') end