blob: abf81f247506f70570c915067bf28d5c980cff77 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2012 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.swt.internal.cocoa;
public class NSString extends NSObject {
public NSString() {
super();
}
public NSString(long /*int*/ id) {
super(id);
}
public NSString(id id) {
super(id);
}
public String getString() {
char[] buffer = new char[(int)/*64*/length()];
getCharacters(buffer);
return new String(buffer);
}
public NSString initWithString(String str) {
char[] buffer = new char[str.length()];
str.getChars(0, buffer.length, buffer, 0);
return initWithCharacters(buffer, buffer.length);
}
public static NSString stringWith(String str) {
char[] buffer = new char[str.length()];
str.getChars(0, buffer.length, buffer, 0);
return stringWithCharacters(buffer, buffer.length);
}
public long /*int*/ UTF8String() {
return OS.objc_msgSend(this.id, OS.sel_UTF8String);
}
public long /*int*/ characterAtIndex(long /*int*/ index) {
return OS.objc_msgSend(this.id, OS.sel_characterAtIndex_, index);
}
public long /*int*/ compare(NSString string) {
return OS.objc_msgSend(this.id, OS.sel_compare_, string != null ? string.id : 0);
}
public long /*int*/ fileSystemRepresentation() {
return OS.objc_msgSend(this.id, OS.sel_fileSystemRepresentation);
}
public void getCharacters(char[] buffer) {
OS.objc_msgSend(this.id, OS.sel_getCharacters_, buffer);
}
public void getCharacters(char[] buffer, NSRange aRange) {
OS.objc_msgSend(this.id, OS.sel_getCharacters_range_, buffer, aRange);
}
public NSString initWithCharacters(char[] characters, long /*int*/ length) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_initWithCharacters_length_, characters, length);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public boolean isEqualToString(NSString aString) {
return OS.objc_msgSend_bool(this.id, OS.sel_isEqualToString_, aString != null ? aString.id : 0);
}
public NSString lastPathComponent() {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_lastPathComponent);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public long /*int*/ length() {
return OS.objc_msgSend(this.id, OS.sel_length);
}
public NSString lowercaseString() {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_lowercaseString);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString pathExtension() {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_pathExtension);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public static NSString string() {
long /*int*/ result = OS.objc_msgSend(OS.class_NSString, OS.sel_string);
return result != 0 ? new NSString(result) : null;
}
public NSString stringByAddingPercentEscapesUsingEncoding(long /*int*/ enc) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByAddingPercentEscapesUsingEncoding_, enc);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByAppendingPathComponent(NSString str) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByAppendingPathComponent_, str != null ? str.id : 0);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByAppendingPathExtension(NSString str) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByAppendingPathExtension_, str != null ? str.id : 0);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByAppendingString(NSString aString) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByAppendingString_, aString != null ? aString.id : 0);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByDeletingLastPathComponent() {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByDeletingLastPathComponent);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByDeletingPathExtension() {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByDeletingPathExtension);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByReplacingOccurrencesOfString(NSString target, NSString replacement) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByReplacingOccurrencesOfString_withString_, target != null ? target.id : 0, replacement != null ? replacement.id : 0);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public NSString stringByReplacingPercentEscapesUsingEncoding(long /*int*/ enc) {
long /*int*/ result = OS.objc_msgSend(this.id, OS.sel_stringByReplacingPercentEscapesUsingEncoding_, enc);
return result == this.id ? this : (result != 0 ? new NSString(result) : null);
}
public static NSString stringWithCharacters(char[] characters, long /*int*/ length) {
long /*int*/ result = OS.objc_msgSend(OS.class_NSString, OS.sel_stringWithCharacters_length_, characters, length);
return result != 0 ? new NSString(result) : null;
}
public static NSString stringWithFormat(NSString format) {
long /*int*/ result = OS.objc_msgSend(OS.class_NSString, OS.sel_stringWithFormat_, format != null ? format.id : 0);
return result != 0 ? new NSString(result) : null;
}
public static NSString stringWithUTF8String(long /*int*/ nullTerminatedCString) {
long /*int*/ result = OS.objc_msgSend(OS.class_NSString, OS.sel_stringWithUTF8String_, nullTerminatedCString);
return result != 0 ? new NSString(result) : null;
}
}