| // Copyright 2018 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. |
| |
| package templates |
| |
| const SourceFile = ` |
| {{- define "GenerateSourceFile" -}} |
| // WARNING: This file is machine generated by fidlgen. |
| |
| #![feature(futures_api, pin, arbitrary_self_types, nll)] |
| #![allow(warnings)] |
| |
| extern crate fuchsia_async; |
| extern crate fuchsia_zircon as zx; |
| #[macro_use] |
| extern crate fidl; |
| #[macro_use] |
| extern crate futures; |
| {{ range $crate := .ExternCrates -}} |
| extern crate {{ $crate }}; |
| {{ end -}} |
| |
| use fidl::encoding::{Encodable, Decodable}; |
| use futures::{Future, Stream, StreamExt}; |
| use std::ops::Deref; |
| |
| {{ range $const := .Consts -}} |
| {{ template "ConstDeclaration" $const }} |
| {{ end -}} |
| {{ range $enum := .Enums -}} |
| {{ template "EnumDeclaration" $enum }} |
| {{ end -}} |
| {{ range $union := .Unions -}} |
| {{ template "UnionDeclaration" $union }} |
| {{ end -}} |
| {{ range $struct := .Structs -}} |
| {{ template "StructDeclaration" $struct }} |
| {{ end -}} |
| {{ range $table := .Tables -}} |
| {{ template "TableDeclaration" $table }} |
| {{ end -}} |
| {{ range $interface := .Interfaces -}} |
| {{ template "InterfaceDeclaration" $interface }} |
| {{ end -}} |
| {{- end -}} |
| ` |