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.AbsoluteReference; abstract public class Reference extends Object implements Cloneable { public static Reference_Factory factory = new Reference_Factory(); public static class Reference_Factory extends st.gravel.support.jvm.SmalltalkFactory { public Reference basicNew() { throw new RuntimeException("Reference is an abstract class"); } public Reference value_(final String _aString) { if (_aString.endsWith(" class")) { return Reference.factory.value_(_aString.substring(0, _aString.length() - 6)).meta(); } if (_aString.length() == 0) { return AbsoluteReference.factory.path_(new st.gravel.core.Symbol[] {}); } return AbsoluteReference.factory.path_(st.gravel.support.jvm.ArrayExtensions.collect_(st.gravel.support.jvm.StringExtensions.tokensBasedOn_(_aString, '.'), ((st.gravel.support.jvm.Block1<st.gravel.core.Symbol, String>) (new st.gravel.support.jvm.Block1<st.gravel.core.Symbol, String>() { @Override public st.gravel.core.Symbol value_(final String _each) { return (st.gravel.core.Symbol) st.gravel.core.Symbol.value(_each); } })))); } } static public Reference _value_(Object receiver, final String _aString) { return factory.value_(_aString); } public Reference copy() { try { Reference _temp1 = (Reference) this.clone(); _temp1.postCopy(); return _temp1; } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } } public abstract boolean equals(final Object _anObject); public Reference_Factory factory() { return factory; } public abstract int hashCode(); public Reference initialize() { return this; } public abstract boolean isMeta(); public abstract Reference meta(); public abstract AbsoluteReference namespace(); public abstract AbsoluteReference nonmeta(); public Reference postCopy() { return this; } public abstract Reference printOn_(final StringBuilder _aStream); public String toString() { final StringBuilder _aStream; _aStream = st.gravel.support.jvm.WriteStreamFactory.on_(new String()); this.printOn_(_aStream); return _aStream.toString(); } }