private IodineObject emit(VirtualMachine vm, IodineObject self, IodineObject[] args) { if (args.Length < 1) { vm.RaiseException (new IodineArgumentException (1)); return null; } IodineString e = args [0] as IodineString; if (e == null) { vm.RaiseException (new IodineTypeException ("Str")); return null; } if (listeners.ContainsKey (e.Value)) { foreach (IodineObject obj in listeners [e.Value]) { obj.Invoke (vm, args.Skip (1).ToArray ()); } } return null; }