org.luaj.vm2.LuaTable.rawset()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(6.2k)|赞(0)|评价(0)|浏览(69)

本文整理了Java中org.luaj.vm2.LuaTable.rawset()方法的一些代码示例,展示了LuaTable.rawset()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。LuaTable.rawset()方法的具体详情如下:
包路径:org.luaj.vm2.LuaTable
类名称:LuaTable
方法名:rawset

LuaTable.rawset介绍

[英]caller must ensure key is not nil
[中]调用方必须确保密钥不是nil

代码示例

代码示例来源:origin: hsllany/HtmlNative

public LuaValue call(LuaValue table, LuaValue index, LuaValue value) {
    LuaTable t = table.checktable();
    t.rawset(index.checknotnil(), value);
    return t;
  }
}

代码示例来源:origin: M66B/XPrivacyLua

public LuaValue call(LuaValue table, LuaValue index, LuaValue value) {
    LuaTable t = table.checktable();
    t.rawset(index.checknotnil(), value);
    return t;
  }
}

代码示例来源:origin: mirkosertic/GameComposer

@Override
  public LuaValue call(LuaValue table, LuaValue index, LuaValue value) {
    LuaTable t = table.checktable();
    t.rawset(index.checknotnil(), value);
    return t;
  }
}

代码示例来源:origin: mirkosertic/GameComposer

/**
 * Construct table with named and unnamed parts. 
 * @param named Named elements in order {@code key-a, value-a, key-b, value-b, ... }
 * @param unnamed Unnamed elements in order {@code value-1, value-2, ... } 
 * @param lastarg Additional unnamed values beyond {@code unnamed.length}
 */
public LuaTable(LuaValue[] named, LuaValue[] unnamed, Varargs lastarg) {
  int nn = (named!=null? named.length: 0);
  int nu = (unnamed!=null? unnamed.length: 0);
  int nl = (lastarg!=null? lastarg.narg(): 0);
  presize(nu+nl, nn>>1);
  for ( int i=0; i<nu; i++ )
    rawset(i+1,unnamed[i]);
  if ( lastarg != null )
    for ( int i=1,n=lastarg.narg(); i<=n; ++i )
      rawset(nu+i,lastarg.arg(i));
  for ( int i=0; i<nn; i+=2 )
    if (!named[i+1].isnil())
      rawset(named[i], named[i+1]);
}

代码示例来源:origin: M66B/XPrivacyLua

/**
 * Construct table with named and unnamed parts. 
 * @param named Named elements in order {@code key-a, value-a, key-b, value-b, ... }
 * @param unnamed Unnamed elements in order {@code value-1, value-2, ... } 
 * @param lastarg Additional unnamed values beyond {@code unnamed.length}
 */
public LuaTable(LuaValue[] named, LuaValue[] unnamed, Varargs lastarg) {
  int nn = (named!=null? named.length: 0);
  int nu = (unnamed!=null? unnamed.length: 0);
  int nl = (lastarg!=null? lastarg.narg(): 0);
  presize(nu+nl, nn>>1);
  for ( int i=0; i<nu; i++ )
    rawset(i+1,unnamed[i]);
  if ( lastarg != null )
    for ( int i=1,n=lastarg.narg(); i<=n; ++i )
      rawset(nu+i,lastarg.arg(i));
  for ( int i=0; i<nn; i+=2 )
    if (!named[i+1].isnil())
      rawset(named[i], named[i+1]);
}

代码示例来源:origin: hsllany/HtmlNative

/**
 * Construct table with named and unnamed parts. 
 * @param named Named elements in order {@code key-a, value-a, key-b, value-b, ... }
 * @param unnamed Unnamed elements in order {@code value-1, value-2, ... } 
 * @param lastarg Additional unnamed values beyond {@code unnamed.length}
 */
public LuaTable(LuaValue[] named, LuaValue[] unnamed, Varargs lastarg) {
  int nn = (named!=null? named.length: 0);
  int nu = (unnamed!=null? unnamed.length: 0);
  int nl = (lastarg!=null? lastarg.narg(): 0);
  presize(nu+nl, nn>>1);
  for ( int i=0; i<nu; i++ )
    rawset(i+1,unnamed[i]);
  if ( lastarg != null )
    for ( int i=1,n=lastarg.narg(); i<=n; ++i )
      rawset(nu+i,lastarg.arg(i));
  for ( int i=0; i<nn; i+=2 )
    if (!named[i+1].isnil())
      rawset(named[i], named[i+1]);
}

代码示例来源:origin: mirkosertic/GameComposer

/** Insert an element at a position in a list-table
 *  
 * @param pos the position to remove
 * @param value The value to insert
 */
public void insert(int pos, LuaValue value) {
  if ( pos == 0 )
    pos = length()+1;
  while ( ! value.isnil() ) {
    LuaValue v = rawget( pos );
    rawset(pos++, value);
    value = v;
  }
}

代码示例来源:origin: hsllany/HtmlNative

/** Insert an element at a position in a list-table
 *  
 * @param pos the position to remove
 * @param value The value to insert
 */
public void insert(int pos, LuaValue value) {
  if ( pos == 0 )
    pos = rawlen()+1;
  while ( ! value.isnil() ) {
    LuaValue v = rawget( pos );
    rawset(pos++, value);
    value = v;
  }
}

代码示例来源:origin: M66B/XPrivacyLua

/** Insert an element at a position in a list-table
 *  
 * @param pos the position to remove
 * @param value The value to insert
 */
public void insert(int pos, LuaValue value) {
  if ( pos == 0 )
    pos = rawlen()+1;
  while ( ! value.isnil() ) {
    LuaValue v = rawget( pos );
    rawset(pos++, value);
    value = v;
  }
}

代码示例来源:origin: M66B/XPrivacyLua

public void set( int key, LuaValue value ) {
  if ( m_metatable==null || ! rawget(key).isnil() || ! settable(this,LuaInteger.valueOf(key),value) )
    rawset(key, value);
}

代码示例来源:origin: mirkosertic/GameComposer

@Override
public void set( int key, LuaValue value ) {
  if ( m_metatable==null || ! rawget(key).isnil() || ! settable(this,LuaInteger.valueOf(key),value) )
    rawset(key, value);
}

代码示例来源:origin: hsllany/HtmlNative

public void set( int key, LuaValue value ) {
  if ( m_metatable==null || ! rawget(key).isnil() || ! settable(this,LuaInteger.valueOf(key),value) )
    rawset(key, value);
}

代码示例来源:origin: M66B/XPrivacyLua

/** Remove the element at a position in a list-table
 *  
 * @param pos the position to remove
 * @return The removed item, or {@link #NONE} if not removed
 */
public LuaValue remove(int pos) {
  int n = rawlen();
  if ( pos == 0 )
    pos = n;
  else if (pos > n)
    return NONE;
  LuaValue v = rawget(pos);
  for ( LuaValue r=v; !r.isnil(); ) {
    r = rawget(pos+1);
    rawset(pos++, r);
  }
  return v.isnil()? NONE: v;
}

代码示例来源:origin: mirkosertic/GameComposer

/** Remove the element at a position in a list-table
 *  
 * @param pos the position to remove
 * @return The removed item, or {@link #NONE} if not removed
 */
public LuaValue remove(int pos) {
  int n = length();
  if ( pos == 0 )
    pos = n;
  else if (pos > n)
    return NONE;
  LuaValue v = rawget(pos);
  for ( LuaValue r=v; !r.isnil(); ) {
    r = rawget(pos+1);
    rawset(pos++, r);
  }
  return v.isnil()? NONE: v;
}

代码示例来源:origin: hsllany/HtmlNative

/** Remove the element at a position in a list-table
 *  
 * @param pos the position to remove
 * @return The removed item, or {@link #NONE} if not removed
 */
public LuaValue remove(int pos) {
  int n = rawlen();
  if ( pos == 0 )
    pos = n;
  else if (pos > n)
    return NONE;
  LuaValue v = rawget(pos);
  for ( LuaValue r=v; !r.isnil(); ) {
    r = rawget(pos+1);
    rawset(pos++, r);
  }
  return v.isnil()? NONE: v;
}

代码示例来源:origin: M66B/XPrivacyLua

/** caller must ensure key is not nil */
public void set( LuaValue key, LuaValue value ) {
  if (!key.isvalidkey() && !metatag(NEWINDEX).isfunction())
    typerror("table index");
  if ( m_metatable==null || ! rawget(key).isnil() ||  ! settable(this,key,value) )
    rawset(key, value);
}

代码示例来源:origin: hsllany/HtmlNative

/** caller must ensure key is not nil */
public void set( LuaValue key, LuaValue value ) {
  if (!key.isvalidkey() && !metatag(NEWINDEX).isfunction())
    typerror("table index");
  if ( m_metatable==null || ! rawget(key).isnil() ||  ! settable(this,key,value) )
    rawset(key, value);
}

代码示例来源:origin: mirkosertic/GameComposer

/** caller must ensure key is not nil */
@Override
public void set( LuaValue key, LuaValue value ) {
  if (!key.isvalidkey() && !metatag(NEWINDEX).isfunction())
    typerror("table index");
  if ( m_metatable==null || ! rawget(key).isnil() ||  ! settable(this,key,value) )
    rawset(key, value);
}

相关文章

微信公众号

最新文章

更多