File: NativeString.hx

package info (click to toggle)
haxe 1%3A4.3.7-1.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 44,524 kB
  • sloc: ml: 137,268; ansic: 2,491; makefile: 456; java: 386; cs: 336; cpp: 318; python: 318; sh: 75; objc: 64; php: 50; xml: 31; javascript: 11
file content (45 lines) | stat: -rw-r--r-- 1,127 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package eval;

import haxe.io.Bytes;

@:coreType abstract NativeString {
	/** String length */
	public var length(get,never):Int;
	function get_length():Int;

	@:from static public function fromString(s:String):NativeString;

	@:from static public function fromBytes(b:Bytes):NativeString;

	/**
		Returns a character at the specified `index`.

		Throws an exception if `index` is outside of the string bounds.
	**/
	public function char(index:Int):String;

	/**
		Returns a character code at the specified `index`.

		Throws an exception if `index` is outside of the string bounds.
	**/
	public function code(index:Int):Int;

	/**
		Returns a fresh string up to `length` characters long, containing the
		substring that starts at position `start`.

		If `length` is not specified the all characters from `start` to the end
		of this string are returned.

		Throws an exception if `index` is outside of the string bounds.
	**/
	public function sub(start:Int, ?length:Int):NativeString;

	public function toString():String;

	public function toBytes():Bytes;

	@:op(A + B)
	public function concat(s:NativeString):NativeString;
}