2
0
woollybah 8 жил өмнө
parent
commit
1f6e54544d
1 өөрчлөгдсөн 11 нэмэгдсэн , 3 устгасан
  1. 11 3
      bank.mod/bank.bmx

+ 11 - 3
bank.mod/bank.bmx

@@ -25,7 +25,7 @@ end rem
 Type TBank
 
 	Field _buf:Byte Ptr
-	Field _size:Size_T,_capacity:Size_T
+	Field _size:Size_T,_capacity:Size_T,_static:Int
 	Field _locked
 	
 	Method _pad()
@@ -85,13 +85,20 @@ Type TBank
 	Method Capacity:Size_T()
 		Return _capacity
 	End Method
+	
+	Rem
+	bbdoc: Returns True if the bank is static.
+	End Rem
+	Method IsStatic:Int()
+		Return _static
+	End Method
 
 	Rem
 	bbdoc: Resize a bank
 	End Rem
 	Method Resize( size:Size_T )
 		Assert _locked=0 Else "Locked banks cannot be resize"
-		Assert _capacity>=0 Else "Static banks cannot be resized"
+		Assert _static=0 Else "Static banks cannot be resized"
 		If size>_capacity
 			Local n:Size_T=_capacity*3/2
 			If n<size n=size
@@ -279,7 +286,8 @@ Type TBank
 		Local bank:TBank=New TBank
 		bank._buf=buf
 		bank._size=size
-		bank._capacity=-1
+		bank._capacity=size
+		bank._static=True
 		Return bank
 	End Function