From f18134bf74326d025454df7a60e84cbc1059a0ae Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Fri, 30 Oct 2009 01:10:15 +0000 Subject: [PATCH] Make soem methods final, let loadsting use "string" for chunk name --- src/core/org/luaj/vm2/Buffer.java | 28 +++++++++++++------------- src/core/org/luaj/vm2/LuaValue.java | 5 +++-- src/core/org/luaj/vm2/UpValue.java | 10 ++++----- src/core/org/luaj/vm2/lib/BaseLib.java | 4 ++-- 4 files changed, 24 insertions(+), 23 deletions(-) diff --git a/src/core/org/luaj/vm2/Buffer.java b/src/core/org/luaj/vm2/Buffer.java index 12549649..7b330f66 100644 --- a/src/core/org/luaj/vm2/Buffer.java +++ b/src/core/org/luaj/vm2/Buffer.java @@ -26,7 +26,7 @@ package org.luaj.vm2; * String buffer for use in string library methods, optimized for production * of StrValue instances. */ -public class Buffer { +public final class Buffer { private static final int DEFAULT_CAPACITY = 64; private byte[] bytes; @@ -36,32 +36,32 @@ public class Buffer { this(DEFAULT_CAPACITY); } - public String toString() { - return new LuaString(bytes, 0, length).toString(); - } - public Buffer( int initialCapacity ) { bytes = new byte[ initialCapacity ]; length = 0; } - public void append( byte b ) { + public final String toString() { + return new LuaString(bytes, 0, length).toString(); + } + + public final void append( byte b ) { ensureCapacity( length + 1 ); bytes[ length++ ] = b; } - public void append( LuaValue val ) { + public final void append( LuaValue val ) { append( val.strvalue() ); } - public void append( LuaString str ) { + public final void append( LuaString str ) { final int alen = str.length(); ensureCapacity( length + alen ); str.copyInto( 0, bytes, length, alen ); length += alen; } - public void append( String str ) { + public final void append( String str ) { char[] chars = str.toCharArray(); final int alen = LuaString.lengthAsUtf8( chars ); ensureCapacity( length + alen ); @@ -69,25 +69,25 @@ public class Buffer { length += alen; } - public void setLength( int length ) { + public final void setLength( int length ) { ensureCapacity( length ); this.length = length; } - public LuaString tostrvalue() { + public final LuaString tostrvalue() { return new LuaString( realloc( bytes, length ) ); } - public void ensureCapacity( int minSize ) { + public final void ensureCapacity( int minSize ) { if ( minSize > bytes.length ) realloc( minSize ); } - private void realloc( int minSize ) { + private final void realloc( int minSize ) { bytes = realloc( bytes, Math.max( bytes.length * 2, minSize ) ); } - private static byte[] realloc( byte[] b, int newSize ) { + private final static byte[] realloc( byte[] b, int newSize ) { byte[] newBytes = new byte[ newSize ]; System.arraycopy( b, 0, newBytes, 0, Math.min( b.length, newSize ) ); return newBytes; diff --git a/src/core/org/luaj/vm2/LuaValue.java b/src/core/org/luaj/vm2/LuaValue.java index 74e53630..fd7bd399 100644 --- a/src/core/org/luaj/vm2/LuaValue.java +++ b/src/core/org/luaj/vm2/LuaValue.java @@ -177,6 +177,7 @@ public class LuaValue extends Varargs { public void rawset( String key, double value ) { rawset(valueOf(key),valueOf(value)); } public void rawset( String key, int value ) { rawset(valueOf(key),valueOf(value)); } public void rawset( String key, String value ) { rawset(valueOf(key),valueOf(value)); } + public void rawsetlist( int key0, Varargs values ) { for ( int i=0, n=values.narg(); i=limit) ) { array = new LuaValue[] { array[index] }; index = 0; @@ -58,7 +58,7 @@ public class UpValue { } } - public boolean isClosed() { + public final boolean isClosed() { return closed; } } diff --git a/src/core/org/luaj/vm2/lib/BaseLib.java b/src/core/org/luaj/vm2/lib/BaseLib.java index 95349e91..56b389e3 100644 --- a/src/core/org/luaj/vm2/lib/BaseLib.java +++ b/src/core/org/luaj/vm2/lib/BaseLib.java @@ -238,8 +238,8 @@ public class BaseLib extends LuaTable implements ResourceFinder { case 4: // "loadstring", // ( string [,chunkname] ) -> chunk | nil, msg try { LuaString script = args.checkstring(1); - LuaString chunkname = args.optstring(2, script); - return LoadState.load(script.toInputStream(), chunkname.toString(),LuaThread.getRunningEnv(env)); + String chunkname = args.optString(2, "string"); + return LoadState.load(script.toInputStream(),chunkname,LuaThread.getRunningEnv(env)); } catch ( Exception e ) { return varargsOf(NIL, valueOf(e.getMessage())); }