// Copyright (c) 2015, 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.

import 'package:analyzer/src/generated/source.dart';
import 'package:analyzer/src/task/api/model.dart';

/**
 * The content of a [Source].
 */
final ResultDescriptor<String> CONTENT =
    new ResultDescriptor<String>('CONTENT', null);

/**
 * The line information for a [Source].
 */
final ResultDescriptor<LineInfo> LINE_INFO =
    new ResultDescriptor<LineInfo>('LINE_INFO', null);

/**
 * The modification time of a [Source].
 */
final ResultDescriptor<int> MODIFICATION_TIME =
    new ResultDescriptor<int>('MODIFICATION_TIME', -1);
