Skip to content
This repository
tree: 68bb0b411c
Fetching contributors…

Cannot retrieve contributors at this time

file 73 lines (58 sloc) 2.417 kb
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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
// Copyright 2010 Todd Ditchendorf
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#import "PKJSCaseInsensitiveLiteral.h"
#import "PKJSUtils.h"
#import "PKJSTerminal.h"
#import <ParseKit/PKCaseInsensitiveLiteral.h>

#pragma mark -
#pragma mark Methods

#pragma mark -
#pragma mark Properties

#pragma mark -
#pragma mark Initializer/Finalizer

static void PKCaseInsensitiveLiteral_initialize(JSContextRef ctx, JSObjectRef this) {
    
}

static void PKCaseInsensitiveLiteral_finalize(JSObjectRef this) {
    // released in PKParser_finalize
}

static JSStaticFunction PKCaseInsensitiveLiteral_staticFunctions[] = {
{ 0, 0, 0 }
};

static JSStaticValue PKCaseInsensitiveLiteral_staticValues[] = {
{ 0, 0, 0, 0 }
};

#pragma mark -
#pragma mark Public

JSClassRef PKCaseInsensitiveLiteral_class(JSContextRef ctx) {
    static JSClassRef jsClass = NULL;
    if (!jsClass) {
        JSClassDefinition def = kJSClassDefinitionEmpty;
        def.parentClass = PKTerminal_class(ctx);
        def.staticFunctions = PKCaseInsensitiveLiteral_staticFunctions;
        def.staticValues = PKCaseInsensitiveLiteral_staticValues;
        def.initialize = PKCaseInsensitiveLiteral_initialize;
        def.finalize = PKCaseInsensitiveLiteral_finalize;
        jsClass = JSClassCreate(&def);
    }
    return jsClass;
}

JSObjectRef PKCaseInsensitiveLiteral_new(JSContextRef ctx, void *data) {
    return JSObjectMake(ctx, PKCaseInsensitiveLiteral_class(ctx), data);
}

JSObjectRef PKCaseInsensitiveLiteral_construct(JSContextRef ctx, JSObjectRef constructor, size_t argc, const JSValueRef argv[], JSValueRef *ex) {
    PKPreconditionConstructorArgc(1, "PKCaseInsensitiveLiteral");
    
    NSString *s = PKJSValueGetNSString(ctx, argv[0], ex);
    
    PKCaseInsensitiveLiteral *data = [[PKCaseInsensitiveLiteral alloc] initWithString:s];
    return PKCaseInsensitiveLiteral_new(ctx, data);
}
Something went wrong with that request. Please try again.