blob: 7293cad5a12331c676e408d3d2643fccea089943 [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.
// This code was auto-generated, is not intended to be edited, and is subject to
// significant change. Please see the README file for more information.
library service.correction.stubs;
import 'package:analyzer/src/generated/ast.dart' show AstNode;
import 'package:analyzer/src/generated/element.dart';
import 'package:analyzer/src/generated/scanner.dart';
import 'package:analyzer/src/generated/source.dart';
abstract class SearchFilter {
bool passes(SearchMatch match);
}
class SearchMatch {
final Element element = null;
final SourceRange sourceRange = null;
}
class SearchEngine {
}
class SourceRangeFactory {
static SourceRange rangeElementName(Element element) {
return new SourceRange(element.nameOffset, element.name.length);
}
static SourceRange rangeEndEnd(a, b) {
int offset = a.end;
var length = b.end - offset;
return new SourceRange(offset, length);
}
static SourceRange rangeEndLength(a, int length) {
return new SourceRange(a.nameOffset, length);
}
static SourceRange rangeEndStart(a, b) {
int offset = a.end;
var length = b.offset - offset;
return new SourceRange(offset, length);
}
static SourceRange rangeNode(AstNode node) {
return new SourceRange(node.offset, node.length);
}
static SourceRange rangeNodes(List<AstNode> nodes) {
if (nodes.isEmpty) {
return new SourceRange(0, 0);
}
AstNode first = nodes.first;
AstNode last = nodes.last;
return rangeStartEnd(first, last);
}
static SourceRange rangeStartEnd(a, b) {
int offset = a.offset;
var length = b.end - offset;
return new SourceRange(offset, length);
}
static SourceRange rangeStartLength(a, int length) {
int offset = a.offset;
return new SourceRange(offset, length);
}
static SourceRange rangeStartStart(a, b) {
int offset = a.offset;
var length = b.offset - offset;
return new SourceRange(offset, length);
}
static SourceRange rangeToken(Token node) {
return new SourceRange(node.offset, node.length);
}
}
class StringUtils {
static String capitalize(String str) {
if (isEmpty(str)) {
return str;
}
return str.substring(0, 1).toUpperCase() + str.substring(1);
}
static bool equals(String cs1, String cs2) {
if (cs1 == cs2) {
return true;
}
if (cs1 == null || cs2 == null) {
return false;
}
return cs1 == cs2;
}
static bool isEmpty(String str) {
return str == null || str.isEmpty;
}
static String join(Iterable iter, [String separator = ' ', int start = 0, int
end = -1]) {
if (start != 0) {
iter = iter.skip(start);
}
if (end != -1) {
iter = iter.take(end - start);
}
return iter.join(separator);
}
static String remove(String str, String remove) {
if (isEmpty(str) || isEmpty(remove)) {
return str;
}
return str.replaceAll(remove, '');
}
static String removeStart(String str, String remove) {
if (isEmpty(str) || isEmpty(remove)) {
return str;
}
if (str.startsWith(remove)) {
return str.substring(remove.length);
}
return str;
}
static String repeat(String s, int n) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < n; i++) {
sb.write(s);
}
return sb.toString();
}
static List<String> split(String s, [String pattern = '']) {
return s.split(pattern);
}
static List<String> splitByWholeSeparatorPreserveAllTokens(String s, String
pattern) {
return s.split(pattern);
}
}