package st.gravel.support.compiler.ast; /* This file is automatically generated from typed smalltalk source. Do not edit by hand. (C) AG5.com */ import java.math.BigInteger; import st.gravel.support.jvm.NonLocalReturn; import st.gravel.support.compiler.ast.SourcePosition; public class SourceFile extends Object implements Cloneable { public static SourceFile_Factory factory = new SourceFile_Factory(); String _directory; String _name; st.gravel.core.Symbol _packageName; public static class SourceFile_Factory extends st.gravel.support.jvm.SmalltalkFactory { public SourceFile basicNew() { SourceFile newInstance = new SourceFile(); newInstance.initialize(); return newInstance; } public SourceFile directory_name_packageName_(final String _directory, final String _aName, final st.gravel.core.Symbol _packageName) { return this.basicNew().initializeDirectory_name_packageName_(_directory, _aName, _packageName); } } static public SourceFile _directory_name_packageName_(Object receiver, final String _directory, final String _aName, final st.gravel.core.Symbol _packageName) { return factory.directory_name_packageName_(_directory, _aName, _packageName); } public java.io.File asFile() { return new java.io.File(st.gravel.support.jvm.StringExtensions.asFilename(_directory), _name); } public SourceFile copy() { try { SourceFile _temp1 = (SourceFile) this.clone(); _temp1.postCopy(); return _temp1; } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } } public boolean equals(final Object _anObject) { if (!(this.getClass() == _anObject.getClass())) { return false; } if (this._directory == null) { if (!(((SourceFile) _anObject)._directory == null)) { return false; } } else { if (!st.gravel.support.jvm.StringExtensions.equals_(this._directory, ((SourceFile) _anObject)._directory)) { return false; } } if (this._name == null) { if (!(((SourceFile) _anObject)._name == null)) { return false; } } else { if (!st.gravel.support.jvm.StringExtensions.equals_(this._name, ((SourceFile) _anObject)._name)) { return false; } } if (this._packageName == null) { if (!(((SourceFile) _anObject)._packageName == null)) { return false; } } else { if (!st.gravel.support.jvm.ObjectExtensions.equals_(this._packageName, ((SourceFile) _anObject)._packageName)) { return false; } } return true; } public SourceFile_Factory factory() { return factory; } public SourcePosition from_to_(final int _start, final int _stop) { return SourcePosition.factory.sourceFile_start_stop_(this, _start, _stop); } public int hashCode() { return ((this.factory() == null ? 0 : this.factory().hashCode()) ^ _name.hashCode()); } public SourceFile initialize() { return this; } public SourceFile initializeDirectory_name_packageName_(final String _aDirectory, final String _aName, final st.gravel.core.Symbol _anObject) { _directory = _aDirectory; _name = _aName; _packageName = _anObject; this.initialize(); return this; } public String name() { return _name; } public st.gravel.core.Symbol packageName() { return _packageName; } public SourceFile postCopy() { return this; } }