| // Copyright 2021 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 summarize |
| |
| import ( |
| "go.fuchsia.dev/fuchsia/tools/fidl/lib/fidlgen" |
| ) |
| |
| // alias represents an element corresponding to a FIDL alias declaration. |
| type alias struct { |
| named |
| notMember |
| } |
| |
| const aliasType Kind = "alias" |
| |
| // String implements Element. |
| func (a alias) String() string { |
| return a.Serialize().String() |
| } |
| |
| func (a alias) Serialize() ElementStr { |
| e := a.named.Serialize() |
| e.Kind = aliasType |
| return e |
| } |
| |
| // addAliases adds the aliases from the declaration map. |
| func (s *summarizer) addAliases(decls fidlgen.DeclMap) { |
| for d, t := range decls { |
| // Aliases only make an appearance in the decls section, where they are |
| // registered as "type_alias". |
| if t != "type_alias" { |
| continue |
| } |
| s.addElement(alias{ |
| named: named{name: Name(d)}, |
| }) |
| } |
| } |