blob: 3dce8e189ba4240f9f0e9042318aca929712a17d [file] [log] [blame]
// Copyright (c) 2011, 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.
library dart2js.script;
import 'io/source_file.dart';
class Script {
final SourceFile file;
/**
* The readable URI from which this script was loaded.
*
* See [LibraryLoader] for terminology on URIs.
*/
final Uri readableUri;
/**
* The resource URI from which this script was loaded.
*
* See [LibraryLoader] for terminology on URIs.
*/
final Uri resourceUri;
/// This script was synthesized.
final bool isSynthesized;
Script(
this.readableUri, this.resourceUri, this.file,
{this.isSynthesized: false});
String get text => (file == null) ? null : file.slowText();
String get name => (file == null) ? null : file.filename;
/// Creates a new [Script] with the same URIs, but new content ([file]).
Script copyWithFile(SourceFile file) {
return new Script(readableUri, resourceUri, file);
}
}