package st.gravel.support.compiler.jvm; /* 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.jvm.JVMVariable; import st.gravel.support.compiler.jvm.JVMVariable.JVMVariable_Factory; import st.gravel.support.compiler.jvm.JVMDynamicObjectType; import st.gravel.support.compiler.jvm.JVMType; import st.gravel.support.compiler.jvm.JVMNodeVisitor; public class JVMLocalDeclaration extends JVMVariable implements Cloneable { public static JVMLocalDeclaration_Factory factory = new JVMLocalDeclaration_Factory(); int _index; public static class JVMLocalDeclaration_Factory extends JVMVariable_Factory { public JVMLocalDeclaration basicNew() { JVMLocalDeclaration newInstance = new JVMLocalDeclaration(); newInstance.initialize(); return newInstance; } public JVMLocalDeclaration blockSelf() { return this.varName_type_index_("__block", JVMDynamicObjectType.factory.basicNew(), 0); } public JVMLocalDeclaration[] localsForSignature_(final JVMType[] _anArray) { return st.gravel.support.jvm.ArrayExtensions.keysAndValuesCollect_(_anArray, new st.gravel.support.jvm.Block2<JVMLocalDeclaration, Integer, JVMType>() { @Override public JVMLocalDeclaration value_value_(final Integer _i, final JVMType _type) { return (JVMLocalDeclaration) JVMLocalDeclaration.factory.varName_type_index_("arg" + "" + _i, _type, (_i - 1)); } }); } public JVMLocalDeclaration self() { return this.varName_type_index_("self", JVMDynamicObjectType.factory.basicNew(), 0); } public JVMLocalDeclaration varName_type_index_(final String _aString, final JVMType _aJVMObjectType, final int _anInteger) { return this.basicNew().initializeVarName_type_index_(_aString, _aJVMObjectType, _anInteger); } } static public JVMLocalDeclaration _blockSelf(Object receiver) { return factory.blockSelf(); } static public JVMLocalDeclaration[] _localsForSignature_(Object receiver, final JVMType[] _anArray) { return factory.localsForSignature_(_anArray); } static public JVMLocalDeclaration _self(Object receiver) { return factory.self(); } static public JVMLocalDeclaration _varName_type_index_(Object receiver, final String _aString, final JVMType _aJVMObjectType, final int _anInteger) { return factory.varName_type_index_(_aString, _aJVMObjectType, _anInteger); } @Override public <X> X accept_(final JVMNodeVisitor<X> _visitor) { return _visitor.visitJVMLocalDeclaration_(this); } public JVMLocalDeclaration copy() { try { JVMLocalDeclaration _temp1 = (JVMLocalDeclaration) this.clone(); _temp1.postCopy(); return _temp1; } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } } public JVMLocalDeclaration_Factory factory() { return factory; } public int index() { return _index; } public JVMLocalDeclaration initializeVarName_type_index_(final String _aString, final JVMType _aJVMObjectType, final int _anInteger) { _varName = _aString; _type = _aJVMObjectType; _index = _anInteger; this.initialize(); return this; } @Override public JVMLocalDeclaration printOn_(final StringBuilder _aStream) { this.sourceOn_(_aStream); return this; } public JVMLocalDeclaration pvtSetVarName_(final String _aName) { _varName = _aName; return this; } @Override public JVMLocalDeclaration sourceOn_(final StringBuilder _aStream) { _aStream.append(_varName); return this; } public JVMLocalDeclaration withVarName_(final String _aName) { return this.copy().pvtSetVarName_(_aName); } }