瀏覽代碼

added fill()

Nicolas Cannasse 12 年之前
父節點
當前提交
c7e5338297
共有 1 個文件被更改,包括 17 次插入0 次删除
  1. 17 0
      std/haxe/io/Bytes.hx

+ 17 - 0
std/haxe/io/Bytes.hx

@@ -95,6 +95,23 @@ class Bytes {
 			b1[i+pos] = b2[i+srcpos];
 		#end
 	}
+	
+	public function fill( pos : Int, len : Int, value : Int ) {
+		#if flash9
+		var v4 = value&0xFF;
+		v4 |= v4<<8;
+		v4 |= v4<<16;
+		b.position = pos;
+		for( i in 0...len>>2 )
+			b.writeUnsignedInt(v4);		
+		pos += len&~3;
+		for( i in 0...len&3 )
+			set(pos++,value);
+		#else
+		for( i in 0...len )
+			set(pos++, value);
+		#end
+	}
 
 	public function sub( pos : Int, len : Int ) : Bytes {
 		#if !neko