TITANIUM_FUNCTION(Properties, getList) { ENSURE_STRING_AT_INDEX(property, 0); ENSURE_OPTIONAL_ARRAY_AT_INDEX(defaultValue, 1); const auto js_context = this_object.get_context(); const auto object_ptr = GetStaticObject(js_context).GetPrivate<Properties>(); const auto list = object_ptr->getList(property, static_cast<std::vector<JSValue>>(defaultValue)); return js_context.CreateArray(list); }
TITANIUM_FUNCTION(UDP, sendBytes) { ENSURE_OPTIONAL_UINT_AT_INDEX(port, 0, 0); ENSURE_OPTIONAL_STRING_AT_INDEX(host, 1, ""); ENSURE_OPTIONAL_ARRAY_AT_INDEX(js_data, 2); std::vector<std::uint8_t> data; const auto length = js_data.GetLength(); for (uint32_t i = 0; i < length; i++) { data.push_back(static_cast<std::uint8_t>(static_cast<std::uint32_t>(js_data.GetProperty(i)))); } sendBytes(port, host, data); return get_context().CreateUndefined(); }