| // Copyright 2017 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| library fuchsia.modular; |
| |
| // Module parameters are named pointers to link instances. |
| struct CreateModuleParameterMapInfo { |
| // Contains instructions to create each name in the parameter map. |
| vector<CreateModuleParameterMapEntry>? property_info; |
| }; |
| |
| struct CreateModuleParameterMapEntry { |
| string? key; |
| CreateModuleParameterInfo value; |
| }; |
| |
| union CreateModuleParameterInfo { |
| // Instructs parameter map initialization to either use an existing Link |
| // (|link_path| is set) or create a new Link (|create_link| is set). |
| LinkPath link_path; |
| CreateLinkInfo create_link; |
| }; |