blob: 2290e638a5a5d2a5a3a5d3167e9ce603322167b5 [file] [log] [blame]
// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart = 2.7
library link_helper;
import 'package:_fe_analyzer_shared/src/util/link.dart';
import 'package:_fe_analyzer_shared/src/util/link_implementation.dart';
Link LinkFromList(List list) {
switch (list.length) {
case 0:
return new Link();
case 1:
return new LinkEntry(list[0]);
case 2:
return new LinkEntry(list[0], new LinkEntry(list[1]));
case 3:
return new LinkEntry(
list[0], new LinkEntry(list[1], new LinkEntry(list[2])));
}
Link link = new Link();
for (int i = list.length; i > 0; i--) {
link = link.prepend(list[i - 1]);
}
return link;
}