From 05c06ccb75d3e35612f4be58f4bc64bee84f9d78 Mon Sep 17 00:00:00 2001 From: Renaud Pawlak Date: Thu, 27 Jul 2017 07:12:29 +0200 Subject: [PATCH] update doc --- doc/jsweet-language-specifications.md | 134 ++++++++++++++++-------- doc/jsweet-language-specifications.pdf | Bin 332177 -> 334833 bytes doc/jsweet-language-specifications.tex | 136 +++++++++++++++++-------- 3 files changed, 180 insertions(+), 90 deletions(-) diff --git a/doc/jsweet-language-specifications.md b/doc/jsweet-language-specifications.md index 3ba5c56a..aca1365f 100644 --- a/doc/jsweet-language-specifications.md +++ b/doc/jsweet-language-specifications.md @@ -1723,7 +1723,7 @@ The following sections illustrate the use of JSweet adapters with 5 real-life ex This simple adapter renames non-public members by adding two underscores as a prefix. Note that this could be dangerous to use for protected fields if wanting to access them from subclasses declared in other JSweet projects. So you may want to use carefully or to modify the code for your own needs. -This adapter is a good example for demonstrating how to use annotation managers. Annotation managers are used to add (soft) annotations to program elements driven by some Java code (programmatically). Annotation managers are added to the context an will be chained to other existing annotation managers (potentially added by other adapters). An annotation manager must implement the `manageAnnotation` method, that will tell if a given annotation should be added, removed, or left unchanged on a given element. If the annotation has parameters, an annotation manager shall implement the `getAnnotationValue` in order to specify the values. +This adapter is a good example for demonstrating how to use annotation managers. Annotation managers are used to add (soft) annotations to program elements driven by some Java code (programmatically). Annotation managers are added to the context and will be chained to other existing annotation managers (potentially added by other adapters). An annotation manager must implement the `manageAnnotation` method, that will tell if a given annotation should be added, removed, or left unchanged on a given element. If the annotation has parameters, an annotation manager shall implement the `getAnnotationValue` in order to specify the values. In this example, the annotation manager adds the `@jsweet.lang.Name` annotation to all non-public elements in order to rename them and add the underscores to the initial name. @@ -1742,7 +1742,7 @@ public class AddPrefixToNonPublicMembersAdapter extends PrinterAdapter { public AddPrefixToNonPublicMembersAdapter(PrinterAdapter parentAdapter) { super(parentAdapter); // add a custom annotation manager to the chain - context.addAnnotationManager(new AnnotationManager() { + addAnnotationManager(new AnnotationManager() { @Override public Action manageAnnotation(Element element, String annotationType) { @@ -1776,9 +1776,9 @@ public class AddPrefixToNonPublicMembersAdapter extends PrinterAdapter { #### Example 2: an adapter to use ES6 Maps -JSweet default implementation of maps it as follows: +JSweet default implementation of maps behaves as follows: -- If the key type is a string, the map is transpiled as a regular JavaScript object, where property names will be the keys. +- If the key type is a string, the map is transpiled to a regular JavaScript object, where property names will be the keys. - If the key type is an object (any other than a string), the map is transpiled as a list of entries. The implementation is quite inefficient because finding a key requires iterating over the entries to find the right entry key. @@ -1827,7 +1827,7 @@ public class MapAdapter extends PrinterAdapter { // map the map constructor to the global 'Map' variable (untyped access) if (Arrays.binarySearch(mapTypes, className) >= 0) { // this access is browser/node-compatible - print("new (window?window:global)['Map'](") + print("new (typeof window == 'undefined'?global:window)['Map'](") .printArgList(newClass.getArguments()).print(")"); return true; } @@ -2080,9 +2080,9 @@ public class StringEnumAdapter extends PrinterAdapter { #### Example 5: an adapter to generate JavaScript JAX-RS proxies/stubs -It is a common use case to implement a WEB or mobile application with Java on the server and JavaScript on the client. Typically, a JEE/Jackson server will expose a REST API through the JAX-RS specifications, and the HTML5 client will have to invoke this API using `XMLHttpRequest` or higher level libraries such as jQuery. However, coding the HTTP invocations manually comes with many drawbacks: +It is a common use case to implement a WEB or mobile application with Java on the server and JavaScript on the client. Typically, a JEE/Jackson server will expose a REST API through the JAX-RS specifications, and the HTML5 client will have to invoke this API using `XMLHttpRequest` or higher-level libraries such as jQuery. However, manually coding the HTTP invocations comes with many drawbacks: -- It requires the use of specific API (XHR, jQuery), which is not easy for all programmers and may imply different programming styles that would make the code more difficult to read and maintain. +- It requires the use of specific APIs (XHR, jQuery), which is not easy for all programmers and may imply different programming styles that would make the code more difficult to read and maintain. - It requires the programmers to handle manually the serialization/deserialization, while it can be done automatically trough the use of annotation-driven generative programming. @@ -2093,6 +2093,16 @@ With a JSweet adapter, using the `afterType` method it is easy to automatically The following code is only a partial implementation of an adapter that would introspect the program’s model and generate the appropriate stubs in TypeScript. It is not meant to be operational, so you need to modify to fit your own use case. ``` java +import javax.lang.model.element.Element; +import javax.lang.model.element.ExecutableElement; +import javax.lang.model.element.TypeElement; +import javax.lang.model.element.VariableElement; +import javax.lang.model.type.TypeKind; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; + class JaxRSStubAdapter extends PrinterAdapter { public JaxRSStubAdapter(PrinterAdapter parent) { @@ -2167,6 +2177,14 @@ class JaxRSStubAdapter extends PrinterAdapter { } ``` +NOTE: for compilation, you need the JAX-RS API in your classpath. + + + javax.ws.rs + javax.ws.rs-api + 2.1-m07 + + As an example, let us consider the following JAX-RS service. ``` java @@ -2236,6 +2254,10 @@ Appendix 1: JSweet transpiler options [-h|--help] + [-w|--watch] + Start a process that watches the input directories for changes and + re-run transpilation on-the-fly. + [-v|--verbose] Turn on all levels of logging. @@ -2248,8 +2270,24 @@ Appendix 1: JSweet transpiler options set, the transpiler will try to use the JAVA_HOME environment variable. Note that the expected JDK version is greater or equals to version 8. - (-i|--input) - An input dir containing Java files to be transpiled. + (-i|--input) input1:input2:...:inputN + An input directory (or column-separated input directories) containing + Java files to be transpiled. Java files will be recursively looked up in + sub-directories. Inclusion and exclusion patterns can be defined with + the 'includes' and 'excludes' options. + + [--includes includes1:includes2:...:includesN ] + A column-separated list of expressions matching files to be included + (relatively to the input directory). + + [--excludes excludes1:excludes2:...:excludesN ] + A column-separated list of expressions matching files to be excluded + (relatively to the input directory). + + [(-d|--defInput) defInput1:defInput2:...:defInputN ] + An input directory (or column-separated input directories) containing + TypeScript definition files (*.d.ts) to be used for transpilation. + Definition files will be recursively looked up in sub-diredctories. [--noRootDirectories] Skip the root directories (i.e. packages annotated with @@ -2263,25 +2301,26 @@ Appendix 1: JSweet transpiler options Specify where to place generated JavaScript files (ignored if jsFile is specified). (default: js) + [--disableSinglePrecisionFloats] + By default, for a target version >=ES5, JSweet will force Java floats to + be mapped to JavaScript numbers that will be constrained with ES5 + Math.fround function. If this option is true, then the calls to + Math.fround are erased and the generated program will use the JavaScript + default precision (double precision). + [--tsOnly] - Tells the transpiler to not compile the TypeScript output (let an - external TypeScript compiler do so). + Do not compile the TypeScript output (let an external TypeScript + compiler do so). - [--disableJavaAddons] - Tells the transpiler disable runtime addons (instanceof, overloading, - class name access, static initialization [...] will not be fully - supported). - - [--definitions] - Tells the transpiler to generate definitions from def.* packages in d.ts - definition files. The output directory is given by the tsout option. - This option can be used to create candies for existing JavaScript - libraries and must not be confused with the 'declaration' option, that - generates the definitions along with a program written in JSweet. + [--ignoreDefinitions] + Ignore definitions from def.* packages, so that they are not generated + in d.ts definition files. If this option is not set, the transpiler + generates d.ts definition files in the directory given by the tsout + option. [--declaration] - Tells the transpiler to generate the d.ts files along with the js files, - so that other programs can use them to compile. + Generate the d.ts files along with the js files, so that other programs + can use them to compile. [--dtsout ] Specify where to place generated d.ts files when the declaration option @@ -2293,8 +2332,8 @@ Appendix 1: JSweet transpiler options (default: js/candies) [--sourceRoot ] - Specifies the location where debugger should locate Java files instead - of source locations. Use this flag if the sources will be located at + Specify the location where debugger should locate Java files instead of + source locations. Use this flag if the sources will be located at run-time in a different location than that at design-time. The location specified will be embedded in the sourceMap to direct the debugger where the source files will be located. @@ -2307,29 +2346,34 @@ Appendix 1: JSweet transpiler options The module kind (none, commonjs, amd, system or umd). (default: none) [-b|--bundle] - Bundle up the generated files and used modules to bundle files, which - can be used in the browser. Bundles contain all the dependencies and are - thus standalone. There is one bundle generated per entry (a Java 'main' - method) in the program. By default, bundles are generated in the entry - directory, but the output directory can be set by using the - --bundlesDirectory option. NOTE: bundles will be generated only when - choosing the commonjs module kind. + Bundle up all the generated code in a single file, which can be used in + the browser. The bundle files are called 'bundle.ts', 'bundle.d.ts', or + 'bundle.js' depending on the kind of generated code. NOTE: bundles are + not compatible with any module kind other than 'none'. - [--bundlesDirectory ] - Generate all the bundles (see option --bundle) within the given - directory. + [(-f|--factoryClassName) ] + Use the given factory to tune the default transpiler behavior. [--sourceMap] - Set the transpiler to generate source map files for the Java files, so - that it is possible to debug them in the browser. This feature is not - available yet when using the --module option. Currently, when this - option is on, the generated TypeScript file is not pretty printed in a - programmer-friendly way (disable it in order to generate readable - TypeScript code). + Generate source map files for the Java files, so that it is possible to + debug Java files directly with a debugger that supports source maps + (most JavaScript debuggers). - [--ignoreAssertions] - Set the transpiler to ignore 'assert' statements, i.e. no code is - generated for assertions. + [--enableAssertions] + Java 'assert' statements are transpiled as runtime JavaScript checks. + + [--header
] + A file that contains a header to be written at the beginning of each + generated file. If left unspecified, JSweet will generate a default + header. + + [--workingDir ] + The directory JSweet uses to store temporary files such as extracted + candies. JSweet uses '.jsweet' if left unspecified. + + [--targetVersion ] + The EcmaScript target (JavaScript) version. Possible values: [ES3, ES5, + ES6] (default: ES3) Appendix 2: packaging and static behavior ----------------------------------------- diff --git a/doc/jsweet-language-specifications.pdf b/doc/jsweet-language-specifications.pdf index e80fda435a7f8702f11af744c632b3def3c40de5..28224610c9c7a3db515c0af360a8464e6afb291e 100644 GIT binary patch delta 70086 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

*IC=_5)I8;WhM5uE|k9gq4B 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 A6#xJL delta 67558 zcmX_GbyQZ}(5`J}7LbNI~Y`?4BnfUjmL8q*KA%x7syA}nP1(>t=L9u_(YJiU;!N0DNl{L=`A5;`oo z!w7~Puv6{Ls#-KH^7C~T@=A}DR9xFUQX(20hv^jeH#zf6$TnEwiRIq1g$axuS6M7b zpHPgYkQ!1}U8!WM>!At5*wvBYFC}Nxf?D`$dCVW9eJP`Zdobpa=70Vxi6;&YT3K9~ zM}uL4b}%r7DyX13FHMC-7FON^!`<$zFuk7@S3WIM;N5Bahw(>5-tSC2|GtRQ37A2T zCwmyf@W5vzqc~?LHyFbNK$A3lHi3bM1{U;hwbi0`yA1RXt9R@@l@gNKZqKUenB4B4 z9(J?Tlj-c7(%MBY+NAk~Tocw9plsOwE_f3=ryDFaGi*mTAR*eZ5rx>guuL{hel!vF zGT0!_=9$WY_m4vDU%e_8>8N$3bL?A&gX7{c4LtwBlkVsfdy;CVrDx^x%Cu(M0z`~r zw~rEsAGgIkiO`1O-DLn?suK78Fr8Gdk!^ddum1|lhfyK%uT#AW0gZ-CSL3Y%hf5(n zBD%me!v*ndY!4%p4TZpMrbO6dK{;kN`zjS_W30yjqQXB5gUooO3cY``dr-4c0=7^L z*G+r;z{9nyP8qR#tDKOBnYq9Bg)qBql?Z?B7dUkg3=v0|D z^{kv3={VS3!|kmqu~`dMg}w&@(0hCT>r{F<$b4Ik=5&9EoGr%K7ZF%!n;qD*Yeehi2h_Nb^$@YJnpD z_Z=S%mVR%X$OOp6%%d+t&!Tf&DCTRH6T{*31v>~*Y;*bqJaSEgM ztQq`l9_4%xaxw_ylHdhi5Xgg^u?C^V`m!H?`12?{&0SOP9i-_g9cP`mAY#W+tQKt% z6_Ymsnf7bq<>d38SY;YRJd{nFBgE_XW!rA~ShP88j<0Q2gYZ%%XGMZD5k=gx^3HtjBT7;;J-a64Xcdz^KwzFLxdb&ED+KBdjtA6Rz(YZKdh{6@%o6L&#AA$w794kdqf-OlB^M z2psq+$x61~pJ~a0Y0nC#eJCXDjUj1&_@C@em1IQ|LMa}~8N!j!F?S#972Y38_UtV; zOr8(85>p;0R?8byaMvI>IQ@}8EVj;~b9C&uKY7*oBQGh#N5*jRJTMA1t7KdaRW&FJ z!9@-kjexwT{x6%uB6}&Yu4^jGlyr^G8OFghX5Q?LFAWAL-l^i~p{MHf%32bLzzFs|cE4CXIJ>heCbWE+RtWKPzG8S={Lk_F52A$pyxjOPReRNb ztMh>8=wtH7CQM$p}R~MhK2EMmF{RVGFL`9yN|C| zRLd@Qb#wZLxsE>TXYYZs7QKK^a$0Vbf5*ynd1Vtx4A)!r6RuWx)`W;M7$YsW_*s(L zGBnD{1MV-E?cX-~0TO5N^_qG1-f0SW(SpmZy7a{aYY16tyRH{~Qi@h?X~*>}vt?1A zTL&0x(K3e? zy36oL^Dyt1B0x&IJEiVT{o<3aTh`WP*r9N}mZ4GR&x)7UvJb~ow$XH3k?3^OZSPTJ zX)jrvSn+!{j@83>VZ<15Qq|NDNNjDTDT&1x`}MwVj`{pN_@P!buW2?V0ga#?bX>2R zn3AR{9k9Fhcf&Gf2la!I^dg7Jf@_oJ3cp(hfoqO>2{nN8?;>Pdy!^U;Xm{&|v+M&o zOYO(m7&4|?j=Q%RA8AU-P0sbVC!xkPWtIDkhQkuF2$>w%W}~@JYI6}x`DQv6@?Y!dKh+j26tmj5EGXpW2C- zUVm>@z{a^(cT^Z8#b=G`$+|uzrZzP`)2|K0Rj2nYHI?d&q)MvCDtcta@g5 zgALd%F*q%hJ53uf(iSsr%p5AN+N#i9>b<-rQft!f9n!(XNx{pm8k1#s&(=fgb3Kqt zPIwL&;V7oe?dYet{@ixJX|!I3t)ShIv=DZW-$O}|cKC{HlFNkkO%mn)S6R=fuNG4k z2VPHAL7#>M&b{`lzIAYZaVh03+=tCy;_G{J^;|4>Lj?S_WzVkl0T;Q-tk6u@tZBZV zt-91Aj`l1}JlIB{^M6(dL3iS4PMxZT;1mi2QK7D$^H7A*N)KN{G-DKCtIuXtzIjnI zU%J`Bc}EOI%3CEY7-kTs8R{fkPsd+u%go}TesM0Pe`EM=-8tp6pc`iKGaBJ%F^ab3 zYhwAgL8<%d}qBK~v*e!E7nOg`QjKFv%$+AMiw5LE4ix(h7QnkUgpFJ zK6|EbY#SJuM*Iln=LV{;-j4dGTw3|cYHbE8`6Q}Ns;U&7qj}4#FLWRr($8uJ#XVVb zH)f1jwlG{iW@7(;q&qxZ(MLYcyKY$qx*7bBsm|0?j-4=jhf85To0khnZT_N4+q&f$ zSvbrU7{X+Zwqknl-|oK@X#snTsu+o@8&C6dp+eYVOJT$TlHhYeDh zWuwP#@kI@mlLLB7bT3Xfmy7e6yhG&fBHjFs(6*;`Q@c&_&;1l@Zbf*>VkI)gAFlUI zzw`BJd2vu=;&RJKOC3KR#+cQqe|E-|D-k%7YaXf)bTKGpX^e2+8vzU?yHaZhm124_ z=P7Yqe#hgEG;!0$vu>`E@fW>pGR5N3ee3zg^yPw@TzWJAqqH%#R%HuTVV>}o|9Q$? z^1plgn@0{?$xJM+ZJmuFRaIRkr(X(-iT0KH=4GxDK1vC_PBp&q7WCKx^1j_<>|Q08 zmFgddkZ(StPt!4)Ry+VdR!htCHQhfP-N-jKe3#7APgK)Rqdg$6CbO=l(BNgenM-C* z?uli8(pcf{oW-#D$CC?qwe3bj3WzfSi3zC(~AA7TIjT=ynV3x zJ&1`i{UStJaj)f0W&iNoA6kzQYK~0lKe*>%P6E^)1a^8%Rxf^g=#G$VtV)JHv2Lh_r^EBz<+NvV1MaOgSjVGkv~1mVgQ1N$dUl-@;Wwv*JA-A|y+U<2 zmkLXuuWW;14D+xO#56`zhg)3gY~#2*!@m^w?-XOQWou)Fj&DsjbWI}?k!2JoS-NEN)!n?MAGHf4Jtb&Svq(C&bW~mgg zQPh?Z7n8-~O#4QMmWBhvX_GoBVv0G>DTkT@iDSW(7^&n_svwnGuq(UFEDIA`CU`It zJm>))>;VtHd;j0Tb1dT=;K%quNd#aUzq5^SK|+z_M~Jz06Z@O6q}$Mv+%RBA{`$O1 zw7xv#%@`P=g9@%+zPMxT2A*obdKFq#z@JEBGQ!6CgItu|<+tCrmKg+b3WBce+Vv{i zyhuwbuyuB%^b|hXkIx^?t9fOt=q0Wt^&W8!Y8;%T)s|*e#>>U4uV{H=*a3Uz^YKz0 z71hG&Yt++zclHCjY^q!R1E0FHkyXhx5f^3<&9Bj{;XpJhA!tC^Fu{HbjCk9hjSLs^ z-TxgS`0GYzogA(n%bGb2;iPU~x}wGsPJGH6@3diwh5*5qcHY@^+c-ML)D6<`iJ^O| z9$ftGFW88tAd5dn_koXrk=AK_Zy_{F_{-`^f2HxoT)SUc^7m?)Y$)I#KndIDC;TE| z(dy=b`%{DwIcVeJU|I2N5GuN`>M+Mg#mq&Nw{RHuSP8~eD};h6Z1?jBcsIfr{VQYv z7UOQbg%b3x&P=P*Q&SkgH3B@-cWZRASe`i}d2 zq`y>RR(GX(qQ|MG{x|*1C1vNqES*=1Ss8FfYSfKUHEOI!uUhw__VUmrU!GGz*aJm1 z9sMx*!-3$l{s@xuy#(K(dpB#*_@f53Z~7mG7&u%7m_ za7)9ex2*t0_|jWOIGa*mFwtiPKnIoIfQ6u&wZYl9fJs{Ls`>6g)v~7CO=1anF5Y1? zrknqBDs(_Ckx{J}aU8=NLg?P;GxSDv-S5g_KT^SM@3+)LKj)yeCl{Y%8j1(-p?HyZ zJKPSmvJav_#{*iyCIYPxz(B0LbdfSmVI>ygDtG6e&L${i7R#HcpD{ed?Yp|;iOgS; z?B$^{c)rYPSiQ1u0Y@Yq-WS;0ahQ(pY%N91T@>MsXTS=k1l}15RxqUhuIz%=VMar$ zvMZPeNR2LGHgg-?wXqNjz{>J*5Uebc#YqRss5?K~p#G+3_s{wuvEhKU;)1jqg0xaV zXmx_n>d+XrfqwB9&t6_pSCW@E@a=3ifDD%irjaU`MmgPJ8hJv}NOJ_qivg>xLPRAH zXnANk6wxb*c@$i)0*ujqXqK9P`VmH?8W0MK>f;>cGcxJC{6{g5B(0 znM!${KEk{@ODp}GuXgnX)jd#oztrffDKdf@DKf|n4M$#x3+-!*7^-k&-(S=1Df-sg7KmUr4kVIlPkgIuA44pU?J*1YA-I z-smO$0sD`P|6hW4r9$PgV6s`8g30y?grNcZzsjo#o{)!GVjLct=mb%0ArwcWrBh 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 LO)aG&jqv{fI_*{V diff --git a/doc/jsweet-language-specifications.tex b/doc/jsweet-language-specifications.tex index 37ecf2d2..7536789f 100644 --- a/doc/jsweet-language-specifications.tex +++ b/doc/jsweet-language-specifications.tex @@ -1741,7 +1741,7 @@ The following sections illustrate the use of JSweet adapters with 5 real-life ex This simple adapter renames non-public members by adding two underscores as a prefix. Note that this could be dangerous to use for protected fields if wanting to access them from subclasses declared in other JSweet projects. So you may want to use carefully or to modify the code for your own needs. -This adapter is a good example for demonstrating how to use annotation managers. Annotation managers are used to add (soft) annotations to program elements driven by some Java code (programmatically). Annotation managers are added to the context an will be chained to other existing annotation managers (potentially added by other adapters). An annotation manager must implement the \texttt{manageAnnotation} method, that will tell if a given annotation should be added, removed, or left unchanged on a given element. If the annotation has parameters, an annotation manager shall implement the \texttt{getAnnotationValue} in order to specify the values. +This adapter is a good example for demonstrating how to use annotation managers. Annotation managers are used to add (soft) annotations to program elements driven by some Java code (programmatically). Annotation managers are added to the context and will be chained to other existing annotation managers (potentially added by other adapters). An annotation manager must implement the \texttt{manageAnnotation} method, that will tell if a given annotation should be added, removed, or left unchanged on a given element. If the annotation has parameters, an annotation manager shall implement the \texttt{getAnnotationValue} in order to specify the values. In this example, the annotation manager adds the \texttt{@jsweet.lang.Name} annotation to all non-public elements in order to rename them and add the underscores to the initial name. @@ -1760,7 +1760,7 @@ public class AddPrefixToNonPublicMembersAdapter extends PrinterAdapter { public AddPrefixToNonPublicMembersAdapter(PrinterAdapter parentAdapter) { super(parentAdapter); // add a custom annotation manager to the chain - context.addAnnotationManager(new AnnotationManager() { + addAnnotationManager(new AnnotationManager() { @Override public Action manageAnnotation(Element element, String annotationType) { @@ -1794,10 +1794,10 @@ public class AddPrefixToNonPublicMembersAdapter extends PrinterAdapter { \subsection{Example 2: an adapter to use ES6 Maps} -JSweet default implementation of maps it as follows: +JSweet default implementation of maps behaves as follows: \begin{itemize} -\item If the key type is a string, the map is transpiled as a regular JavaScript object, where property names will be the keys. +\item If the key type is a string, the map is transpiled to a regular JavaScript object, where property names will be the keys. \item If the key type is an object (any other than a string), the map is transpiled as a list of entries. The implementation is quite inefficient because finding a key requires iterating over the entries to find the right entry key. \end{itemize} @@ -1847,7 +1847,7 @@ public class MapAdapter extends PrinterAdapter { // map the map constructor to the global 'Map' variable (untyped access) if (Arrays.binarySearch(mapTypes, className) >= 0) { // this access is browser/node-compatible - print("new (window?window:global)['Map'](") + print("new (typeof window == 'undefined'?global:window)['Map'](") .printArgList(newClass.getArguments()).print(")"); return true; } @@ -2102,10 +2102,10 @@ public class StringEnumAdapter extends PrinterAdapter { \subsection{Example 5: an adapter to generate JavaScript JAX-RS proxies/stubs} -It is a common use case to implement a WEB or mobile application with Java on the server and JavaScript on the client. Typically, a JEE/Jackson server will expose a REST API through the JAX-RS specifications, and the HTML5 client will have to invoke this API using \texttt{XMLHttpRequest} or higher level libraries such as jQuery. However, coding the HTTP invocations manually comes with many drawbacks: +It is a common use case to implement a WEB or mobile application with Java on the server and JavaScript on the client. Typically, a JEE/Jackson server will expose a REST API through the JAX-RS specifications, and the HTML5 client will have to invoke this API using \texttt{XMLHttpRequest} or higher-level libraries such as jQuery. However, manually coding the HTTP invocations comes with many drawbacks: \begin{itemize} -\item It requires the use of specific API (XHR, jQuery), which is not easy for all programmers and may imply different programming styles that would make the code more difficult to read and maintain. +\item It requires the use of specific APIs (XHR, jQuery), which is not easy for all programmers and may imply different programming styles that would make the code more difficult to read and maintain. \item It requires the programmers to handle manually the serialization/deserialization, while it can be done automatically trough the use of annotation-driven generative programming. \item It leads to unchecked invocations, which means that it is easy for the programmer to make an error in the name of the service/path/parameters, and in the expected DTOs. No refactoring and content-assist is available. \end{itemize} @@ -2115,6 +2115,16 @@ With a JSweet adapter, using the \texttt{afterType} method it is easy to automat The following code is only a partial implementation of an adapter that would introspect the program's model and generate the appropriate stubs in TypeScript. It is not meant to be operational, so you need to modify to fit your own use case. \begin{lstlisting}[language=Java] +import javax.lang.model.element.Element; +import javax.lang.model.element.ExecutableElement; +import javax.lang.model.element.TypeElement; +import javax.lang.model.element.VariableElement; +import javax.lang.model.type.TypeKind; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; + class JaxRSStubAdapter extends PrinterAdapter { public JaxRSStubAdapter(PrinterAdapter parent) { @@ -2189,6 +2199,16 @@ class JaxRSStubAdapter extends PrinterAdapter { } \end{lstlisting} +NOTE: for compilation, you need the JAX-RS API in your classpath. + +\begin{lstlisting} + + javax.ws.rs + javax.ws.rs-api + 2.1-m07 + +\end{lstlisting} + As an example, let us consider the following JAX-RS service. \begin{lstlisting}[language=Java] @@ -2262,6 +2282,10 @@ So, all you need to do is to modify the code of the adapter to generate the actu \begin{verbatim} [-h|--help] + [-w|--watch] + Start a process that watches the input directories for changes and + re-run transpilation on-the-fly. + [-v|--verbose] Turn on all levels of logging. @@ -2274,8 +2298,24 @@ So, all you need to do is to modify the code of the adapter to generate the actu set, the transpiler will try to use the JAVA_HOME environment variable. Note that the expected JDK version is greater or equals to version 8. - (-i|--input) - An input dir containing Java files to be transpiled. + (-i|--input) input1:input2:...:inputN + An input directory (or column-separated input directories) containing + Java files to be transpiled. Java files will be recursively looked up in + sub-directories. Inclusion and exclusion patterns can be defined with + the 'includes' and 'excludes' options. + + [--includes includes1:includes2:...:includesN ] + A column-separated list of expressions matching files to be included + (relatively to the input directory). + + [--excludes excludes1:excludes2:...:excludesN ] + A column-separated list of expressions matching files to be excluded + (relatively to the input directory). + + [(-d|--defInput) defInput1:defInput2:...:defInputN ] + An input directory (or column-separated input directories) containing + TypeScript definition files (*.d.ts) to be used for transpilation. + Definition files will be recursively looked up in sub-diredctories. [--noRootDirectories] Skip the root directories (i.e. packages annotated with @@ -2289,25 +2329,26 @@ So, all you need to do is to modify the code of the adapter to generate the actu Specify where to place generated JavaScript files (ignored if jsFile is specified). (default: js) + [--disableSinglePrecisionFloats] + By default, for a target version >=ES5, JSweet will force Java floats to + be mapped to JavaScript numbers that will be constrained with ES5 + Math.fround function. If this option is true, then the calls to + Math.fround are erased and the generated program will use the JavaScript + default precision (double precision). + [--tsOnly] - Tells the transpiler to not compile the TypeScript output (let an - external TypeScript compiler do so). + Do not compile the TypeScript output (let an external TypeScript + compiler do so). - [--disableJavaAddons] - Tells the transpiler disable runtime addons (instanceof, overloading, - class name access, static initialization [...] will not be fully - supported). - - [--definitions] - Tells the transpiler to generate definitions from def.* packages in d.ts - definition files. The output directory is given by the tsout option. - This option can be used to create candies for existing JavaScript - libraries and must not be confused with the 'declaration' option, that - generates the definitions along with a program written in JSweet. + [--ignoreDefinitions] + Ignore definitions from def.* packages, so that they are not generated + in d.ts definition files. If this option is not set, the transpiler + generates d.ts definition files in the directory given by the tsout + option. [--declaration] - Tells the transpiler to generate the d.ts files along with the js files, - so that other programs can use them to compile. + Generate the d.ts files along with the js files, so that other programs + can use them to compile. [--dtsout ] Specify where to place generated d.ts files when the declaration option @@ -2319,8 +2360,8 @@ So, all you need to do is to modify the code of the adapter to generate the actu (default: js/candies) [--sourceRoot ] - Specifies the location where debugger should locate Java files instead - of source locations. Use this flag if the sources will be located at + Specify the location where debugger should locate Java files instead of + source locations. Use this flag if the sources will be located at run-time in a different location than that at design-time. The location specified will be embedded in the sourceMap to direct the debugger where the source files will be located. @@ -2333,29 +2374,34 @@ So, all you need to do is to modify the code of the adapter to generate the actu The module kind (none, commonjs, amd, system or umd). (default: none) [-b|--bundle] - Bundle up the generated files and used modules to bundle files, which - can be used in the browser. Bundles contain all the dependencies and are - thus standalone. There is one bundle generated per entry (a Java 'main' - method) in the program. By default, bundles are generated in the entry - directory, but the output directory can be set by using the - --bundlesDirectory option. NOTE: bundles will be generated only when - choosing the commonjs module kind. + Bundle up all the generated code in a single file, which can be used in + the browser. The bundle files are called 'bundle.ts', 'bundle.d.ts', or + 'bundle.js' depending on the kind of generated code. NOTE: bundles are + not compatible with any module kind other than 'none'. - [--bundlesDirectory ] - Generate all the bundles (see option --bundle) within the given - directory. + [(-f|--factoryClassName) ] + Use the given factory to tune the default transpiler behavior. [--sourceMap] - Set the transpiler to generate source map files for the Java files, so - that it is possible to debug them in the browser. This feature is not - available yet when using the --module option. Currently, when this - option is on, the generated TypeScript file is not pretty printed in a - programmer-friendly way (disable it in order to generate readable - TypeScript code). + Generate source map files for the Java files, so that it is possible to + debug Java files directly with a debugger that supports source maps + (most JavaScript debuggers). - [--ignoreAssertions] - Set the transpiler to ignore 'assert' statements, i.e. no code is - generated for assertions. + [--enableAssertions] + Java 'assert' statements are transpiled as runtime JavaScript checks. + + [--header

] + A file that contains a header to be written at the beginning of each + generated file. If left unspecified, JSweet will generate a default + header. + + [--workingDir ] + The directory JSweet uses to store temporary files such as extracted + candies. JSweet uses '.jsweet' if left unspecified. + + [--targetVersion ] + The EcmaScript target (JavaScript) version. Possible values: [ES3, ES5, + ES6] (default: ES3) \end{verbatim} \end{small}