@@ -13,7 +13,7 @@ function setupMethods (soljson) {
13
13
}
14
14
var compileJSONCallback = null ;
15
15
var compileStandard = null ;
16
- if ( ( '_compileJSONCallback' in soljson ) || ( '_compileStandard' in soljson ) ) {
16
+ if ( ( '_compileJSONCallback' in soljson ) || ( '_compileStandard' in soljson ) || ( '_solidity_compile' in soljson ) ) {
17
17
var copyString = function ( str , ptr ) {
18
18
var length = soljson . lengthBytesUTF8 ( str ) ;
19
19
var buffer = soljson . _malloc ( length + 1 ) ;
@@ -65,6 +65,12 @@ function setupMethods (soljson) {
65
65
return runWithReadCallback ( readCallback , compileStandardInternal , [ input ] ) ;
66
66
} ;
67
67
}
68
+ if ( '_solidity_compile' in soljson ) {
69
+ var solidityCompile = soljson . cwrap ( 'solidity_compile' , 'string' , [ 'string' , 'number' ] ) ;
70
+ compileStandard = function ( input , readCallback ) {
71
+ return runWithReadCallback ( readCallback , solidityCompile , [ input ] ) ;
72
+ } ;
73
+ }
68
74
}
69
75
70
76
var compile = function ( input , optimise , readCallback ) {
@@ -170,18 +176,27 @@ function setupMethods (soljson) {
170
176
return translateOutput ( compileJSON ( sources [ Object . keys ( sources ) [ 0 ] ] , isOptimizerEnabled ( input ) ) , libraries ) ;
171
177
} ;
172
178
173
- var version = soljson . cwrap ( 'version' , 'string' , [ ] ) ;
179
+ var version ;
180
+ if ( '_solidity_version' in soljson ) {
181
+ version = soljson . cwrap ( 'solidity_version' , 'string' , [ ] ) ;
182
+ } else {
183
+ version = soljson . cwrap ( 'version' , 'string' , [ ] ) ;
184
+ }
174
185
175
186
var versionToSemver = function ( ) {
176
187
return translate . versionToSemver ( version ( ) ) ;
177
188
} ;
178
189
179
- var license = function ( ) {
180
- // return undefined
181
- } ;
182
-
183
- if ( '_license' in soljson ) {
190
+ var license ;
191
+ if ( '_solidity_license' in soljson ) {
192
+ license = soljson . cwrap ( 'solidity_license' , 'string' , [ ] ) ;
193
+ } else if ( '_license' in soljson ) {
184
194
license = soljson . cwrap ( 'license' , 'string' , [ ] ) ;
195
+ } else {
196
+ // pre 0.4.14
197
+ license = function ( ) {
198
+ // return undefined
199
+ } ;
185
200
}
186
201
187
202
return {
0 commit comments