/usr/include/Wt/WJavaScriptPreamble is in libwt-dev 3.3.4+dfsg-6ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 74 75 76 77 78 79 80 81 82 83 84 85 86 | // This may look like C code, but it's really -*- C++ -*-
/*
* Copyright (C) 2010 Emweb bvba, Kessel-Lo, Belgium.
*
* See the LICENSE file for terms of use.
*/
#ifndef WT_JAVASCRIPT_PREAMBLE_H_
#define WT_JAVASCRIPT_PREAMBLE_H_
#include <Wt/WObject>
#define WT_JS(...) #__VA_ARGS__
namespace Wt {
#ifdef WT_TARGET_JAVA
/*! \brief Enumeration for a JavaScript object type.
*
* This is an internal Wt type.
*/
#endif
enum JavaScriptObjectType {
JavaScriptFunction, // called with this == WT
JavaScriptConstructor,
JavaScriptObject,
JavaScriptPrototype
};
#ifdef WT_TARGET_JAVA
/*! \brief Enumeration for a JavaScript object scope.
*
* This is an internal Wt type.
*/
#endif
enum JavaScriptScope {
ApplicationScope,
WtClassScope
};
#ifdef WT_TARGET_JAVA
/*! \brief Javascript preamble.
*
* This is an internal Wt type.
*/
#endif
class WT_API WJavaScriptPreamble
{
public:
WJavaScriptPreamble(JavaScriptScope scope, JavaScriptObjectType type,
const char *name, const char *src);
JavaScriptScope scope;
JavaScriptObjectType type;
const char *name, *src;
};
}
#ifndef WT_DEBUG_JS
#define WT_DECLARE_WT_MEMBER(i, type, name, ...) \
namespace { \
using namespace Wt; \
WJavaScriptPreamble wtjs##i() { \
return WJavaScriptPreamble(WtClassScope, type, name, #__VA_ARGS__); \
} \
}
#define WT_DECLARE_APP_MEMBER(i, type, name, ...) \
namespace { \
using namespace Wt; \
WJavaScriptPreamble appjs##i() { \
return WJavaScriptPreamble(ApplicationScope, type, name, #__VA_ARGS__); \
} \
}
#define LOAD_JAVASCRIPT(app, jsFile, name, jsi) \
app->loadJavaScript(jsFile, jsi())
#else // !WT_DEBUG_JS
#define LOAD_JAVASCRIPT(app, jsFile, name, jsi) \
app->loadJavaScript(jsFile)
#endif // WT_DEBUG_JS
#endif // WT_JAVASCRIPT_PREAMBLE_H_
|