use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern "C" {
pub static OSAScriptErrorMessageKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorBriefMessageKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorNumberKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorPartialResultKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorOffendingObjectKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorExpectedTypeKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorAppAddressKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorAppNameKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorRangeKey: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorMessage: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorNumber: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorAppName: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorBriefMessage: &'static NSString;
}
extern "C" {
pub static OSAScriptErrorRange: &'static NSString;
}
extern "C" {
pub static OSAStorageScriptType: &'static NSString;
}
extern "C" {
pub static OSAStorageScriptBundleType: &'static NSString;
}
extern "C" {
pub static OSAStorageApplicationType: &'static NSString;
}
extern "C" {
pub static OSAStorageApplicationBundleType: &'static NSString;
}
extern "C" {
pub static OSAStorageTextType: &'static NSString;
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct OSAStorageOptions(pub NSUInteger);
bitflags::bitflags! {
impl OSAStorageOptions: NSUInteger {
#[doc(alias = "OSANull")]
const Null = 0x00000000;
#[doc(alias = "OSAPreventGetSource")]
const PreventGetSource = 0x00000001;
#[doc(alias = "OSACompileIntoContext")]
const CompileIntoContext = 0x00000002;
#[doc(alias = "OSADontSetScriptLocation")]
const DontSetScriptLocation = 0x01000000;
#[doc(alias = "OSAStayOpenApplet")]
const StayOpenApplet = 0x10000000;
#[doc(alias = "OSAShowStartupScreen")]
const ShowStartupScreen = 0x20000000;
}
}
unsafe impl Encode for OSAStorageOptions {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for OSAStorageOptions {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct OSAScript;
);
extern_conformance!(
unsafe impl NSCopying for OSAScript {}
);
unsafe impl CopyingHelper for OSAScript {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for OSAScript {}
);
impl OSAScript {
extern_methods!(
#[unsafe(method(scriptDataDescriptorWithContentsOfURL:))]
#[unsafe(method_family = none)]
pub unsafe fn scriptDataDescriptorWithContentsOfURL(
url: &NSURL,
) -> Option<Retained<NSAppleEventDescriptor>>;
#[unsafe(method(initWithSource:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithSource(this: Allocated<Self>, source: &NSString) -> Retained<Self>;
#[cfg(feature = "OSALanguage")]
#[unsafe(method(initWithSource:language:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithSource_language(
this: Allocated<Self>,
source: &NSString,
language: Option<&OSALanguage>,
) -> Retained<Self>;
#[cfg(feature = "OSALanguageInstance")]
#[unsafe(method(initWithSource:fromURL:languageInstance:usingStorageOptions:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithSource_fromURL_languageInstance_usingStorageOptions(
this: Allocated<Self>,
source: &NSString,
url: Option<&NSURL>,
instance: Option<&OSALanguageInstance>,
storage_options: OSAStorageOptions,
) -> Retained<Self>;
#[unsafe(method(initWithContentsOfURL:error:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithContentsOfURL_error(
this: Allocated<Self>,
url: &NSURL,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Option<Retained<Self>>;
#[cfg(feature = "OSALanguage")]
#[deprecated]
#[unsafe(method(initWithContentsOfURL:language:error:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithContentsOfURL_language_error(
this: Allocated<Self>,
url: &NSURL,
language: &OSALanguage,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Retained<Self>;
#[cfg(feature = "OSALanguageInstance")]
#[unsafe(method(initWithContentsOfURL:languageInstance:usingStorageOptions:error:_))]
#[unsafe(method_family = init)]
pub unsafe fn initWithContentsOfURL_languageInstance_usingStorageOptions_error(
this: Allocated<Self>,
url: &NSURL,
instance: Option<&OSALanguageInstance>,
storage_options: OSAStorageOptions,
) -> Result<Retained<Self>, Retained<NSError>>;
#[deprecated]
#[unsafe(method(initWithCompiledData:error:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithCompiledData_error(
this: Allocated<Self>,
data: &NSData,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Retained<Self>;
#[unsafe(method(initWithCompiledData:fromURL:usingStorageOptions:error:_))]
#[unsafe(method_family = init)]
pub unsafe fn initWithCompiledData_fromURL_usingStorageOptions_error(
this: Allocated<Self>,
data: &NSData,
url: Option<&NSURL>,
storage_options: OSAStorageOptions,
) -> Result<Retained<Self>, Retained<NSError>>;
#[cfg(feature = "OSALanguageInstance")]
#[unsafe(method(initWithScriptDataDescriptor:fromURL:languageInstance:usingStorageOptions:error:_))]
#[unsafe(method_family = init)]
pub unsafe fn initWithScriptDataDescriptor_fromURL_languageInstance_usingStorageOptions_error(
this: Allocated<Self>,
data: &NSAppleEventDescriptor,
url: Option<&NSURL>,
instance: Option<&OSALanguageInstance>,
storage_options: OSAStorageOptions,
) -> Result<Retained<Self>, Retained<NSError>>;
#[unsafe(method(source))]
#[unsafe(method_family = none)]
pub unsafe fn source(&self) -> Retained<NSString>;
#[unsafe(method(url))]
#[unsafe(method_family = none)]
pub unsafe fn url(&self) -> Option<Retained<NSURL>>;
#[cfg(feature = "OSALanguage")]
#[unsafe(method(language))]
#[unsafe(method_family = none)]
pub unsafe fn language(&self) -> Retained<OSALanguage>;
#[cfg(feature = "OSALanguage")]
#[unsafe(method(setLanguage:))]
#[unsafe(method_family = none)]
pub unsafe fn setLanguage(&self, language: &OSALanguage);
#[cfg(feature = "OSALanguageInstance")]
#[unsafe(method(languageInstance))]
#[unsafe(method_family = none)]
pub unsafe fn languageInstance(&self) -> Retained<OSALanguageInstance>;
#[cfg(feature = "OSALanguageInstance")]
#[unsafe(method(setLanguageInstance:))]
#[unsafe(method_family = none)]
pub unsafe fn setLanguageInstance(&self, language_instance: &OSALanguageInstance);
#[unsafe(method(isCompiled))]
#[unsafe(method_family = none)]
pub unsafe fn isCompiled(&self) -> bool;
#[unsafe(method(compileAndReturnError:))]
#[unsafe(method_family = none)]
pub unsafe fn compileAndReturnError(
&self,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> bool;
#[unsafe(method(executeAndReturnError:))]
#[unsafe(method_family = none)]
pub unsafe fn executeAndReturnError(
&self,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Option<Retained<NSAppleEventDescriptor>>;
#[unsafe(method(executeAppleEvent:error:))]
#[unsafe(method_family = none)]
pub unsafe fn executeAppleEvent_error(
&self,
event: &NSAppleEventDescriptor,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Option<Retained<NSAppleEventDescriptor>>;
#[unsafe(method(executeAndReturnDisplayValue:error:))]
#[unsafe(method_family = none)]
pub unsafe fn executeAndReturnDisplayValue_error(
&self,
display_value: &mut Option<Retained<NSAttributedString>>,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Option<Retained<NSAppleEventDescriptor>>;
#[unsafe(method(executeHandlerWithName:arguments:error:))]
#[unsafe(method_family = none)]
pub unsafe fn executeHandlerWithName_arguments_error(
&self,
name: &NSString,
arguments: &NSArray,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Option<Retained<NSAppleEventDescriptor>>;
#[unsafe(method(richTextSource))]
#[unsafe(method_family = none)]
pub unsafe fn richTextSource(&self) -> Option<Retained<NSAttributedString>>;
#[unsafe(method(richTextFromDescriptor:))]
#[unsafe(method_family = none)]
pub unsafe fn richTextFromDescriptor(
&self,
descriptor: &NSAppleEventDescriptor,
) -> Option<Retained<NSAttributedString>>;
#[unsafe(method(writeToURL:ofType:error:))]
#[unsafe(method_family = none)]
pub unsafe fn writeToURL_ofType_error(
&self,
url: &NSURL,
r#type: &NSString,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> bool;
#[unsafe(method(writeToURL:ofType:usingStorageOptions:error:))]
#[unsafe(method_family = none)]
pub unsafe fn writeToURL_ofType_usingStorageOptions_error(
&self,
url: &NSURL,
r#type: &NSString,
storage_options: OSAStorageOptions,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> bool;
#[unsafe(method(compiledDataForType:usingStorageOptions:error:))]
#[unsafe(method_family = none)]
pub unsafe fn compiledDataForType_usingStorageOptions_error(
&self,
r#type: &NSString,
storage_options: OSAStorageOptions,
error_info: Option<&mut Option<Retained<NSDictionary<NSString, AnyObject>>>>,
) -> Option<Retained<NSData>>;
);
}
impl OSAScript {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}