Dart Documentationchrome.src.filesCrFileSystem

CrFileSystem class

class CrFileSystem extends ChromeObject implements FileSystem {
 static Map _fileSystems = {};

 /**
  * Use a factory to ensure that the same JavsScript file systems are the same
  * Dart objects.
  */
 factory CrFileSystem.fromProxy(JsObject jsProxy) {
   if (!_fileSystems.containsKey(jsProxy)) {
     _fileSystems[jsProxy] = new CrFileSystem._(jsProxy);
   }

   return _fileSystems[jsProxy];
 }

 CrFileSystem._(JsObject jsProxy): super.fromProxy(jsProxy);

 String get name => jsProxy['name'];

 DirectoryEntry get root => new CrDirectoryEntry.fromProxy(jsProxy['root']);

 bool operator==(Object other) =>
     other is CrFileSystem && other.jsProxy == jsProxy;

 int get hashCode => jsProxy.hashCode;
 String toString() => name;
}

Extends

ChromeObject > CrFileSystem

Implements

FileSystem

Constructors

factory CrFileSystem.fromProxy(JsObject jsProxy) #

Use a factory to ensure that the same JavsScript file systems are the same Dart objects.

factory CrFileSystem.fromProxy(JsObject jsProxy) {
 if (!_fileSystems.containsKey(jsProxy)) {
   _fileSystems[jsProxy] = new CrFileSystem._(jsProxy);
 }

 return _fileSystems[jsProxy];
}

Properties

final int hashCode #

Get a hash code for this object.

All objects have hash codes. Hash codes are guaranteed to be the same for objects that are equal when compared using the equality operator ==. Other than that there are no guarantees about the hash codes. They will not be consistent between runs and there are no distribution guarantees.

If a subclass overrides hashCode it should override the equality operator as well to maintain consistency.

docs inherited from Object
int get hashCode => jsProxy.hashCode;

final jsProxy #

inherited from ChromeObject
final dynamic jsProxy

final String name #

inherited from FileSystem
final String name

final DirectoryEntry root #

inherited from FileSystem
final DirectoryEntry root

Operators

bool operator ==(Object other) #

The equality operator.

The default behavior for all Objects is to return true if and only if this and other are the same object.

Override this method to specify a different equality relation on a class. The overriding method must still be an equivalence relation. That is, it must be:

  • Total: It must return a boolean for all arguments. It should never throw or return null.

  • Reflexive: For all objects o, o == o must be true.

  • Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must either both be true, or both be false.

  • Transitive: For all objects o1, o2, and o3, if o1 == o2 and o2 == o3 are true, then o1 == o3 must be true.

The method should also be consistent over time, so equality of two objects should not change over time, or at least only change if one of the objects was modified.

If a subclass overrides the equality operator it should override the hashCode method as well to maintain consistency.

docs inherited from Object
bool operator==(Object other) =>
   other is CrFileSystem && other.jsProxy == jsProxy;

Methods

JsObject toJs() #

inherited from ChromeObject
JsObject toJs() => jsProxy;

String toString() #

Returns a string representation of this object.

docs inherited from Object
String toString() => name;