Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
baas-ide
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guxukai
baas-ide
Commits
6698a74e
Commit
6698a74e
authored
Dec 21, 2016
by
chriseth
Committed by
GitHub
Dec 21, 2016
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #301 from ethereum/cleanup-compiler-editor
Cleanup the compiler
parents
b3831e8b
48d8dcb1
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
29 additions
and
27 deletions
+29
-27
app.js
src/app.js
+16
-7
compiler.js
src/app/compiler.js
+10
-14
compiler-test.js
test/compiler-test.js
+3
-6
No files found.
src/app.js
View file @
6698a74e
...
@@ -452,7 +452,7 @@ var run = function () {
...
@@ -452,7 +452,7 @@ var run = function () {
}
}
var
executionContext
=
new
ExecutionContext
()
var
executionContext
=
new
ExecutionContext
()
var
compiler
=
new
Compiler
(
editor
,
handleImportCall
)
var
compiler
=
new
Compiler
(
handleImportCall
)
var
formalVerification
=
new
FormalVerification
(
$
(
'#verificationView'
),
compiler
.
event
)
var
formalVerification
=
new
FormalVerification
(
$
(
'#verificationView'
),
compiler
.
event
)
var
offsetToLineColumnConverter
=
new
OffsetToLineColumnConverter
(
compiler
.
event
)
var
offsetToLineColumnConverter
=
new
OffsetToLineColumnConverter
(
compiler
.
event
)
...
@@ -483,6 +483,15 @@ var run = function () {
...
@@ -483,6 +483,15 @@ var run = function () {
autoCompile
=
document
.
querySelector
(
'#autoCompile'
).
checked
autoCompile
=
document
.
querySelector
(
'#autoCompile'
).
checked
})
})
function
runCompiler
()
{
var
files
=
{}
var
target
=
utils
.
fileNameFromKey
(
editor
.
getCacheFile
())
files
[
target
]
=
editor
.
getValue
()
compiler
.
compile
(
files
,
target
)
}
var
previousInput
=
''
var
previousInput
=
''
var
compileTimeout
=
null
var
compileTimeout
=
null
var
saveTimeout
=
null
var
saveTimeout
=
null
...
@@ -518,21 +527,21 @@ var run = function () {
...
@@ -518,21 +527,21 @@ var run = function () {
if
(
compileTimeout
)
{
if
(
compileTimeout
)
{
window
.
clearTimeout
(
compileTimeout
)
window
.
clearTimeout
(
compileTimeout
)
}
}
compileTimeout
=
window
.
setTimeout
(
compiler
.
compile
,
300
)
compileTimeout
=
window
.
setTimeout
(
runCompiler
,
300
)
}
}
editor
.
onChangeSetup
(
editorOnChange
)
editor
.
onChangeSetup
(
editorOnChange
)
$
(
'#compile'
).
click
(
function
()
{
$
(
'#compile'
).
click
(
function
()
{
compiler
.
compile
()
runCompiler
()
})
})
executionContext
.
event
.
register
(
'contextChanged'
,
this
,
function
(
context
)
{
executionContext
.
event
.
register
(
'contextChanged'
,
this
,
function
(
context
)
{
compiler
.
compile
()
runCompiler
()
})
})
executionContext
.
event
.
register
(
'web3EndpointChanged'
,
this
,
function
(
context
)
{
executionContext
.
event
.
register
(
'web3EndpointChanged'
,
this
,
function
(
context
)
{
compiler
.
compile
()
runCompiler
()
})
})
compiler
.
event
.
register
(
'loadingCompiler'
,
this
,
function
(
url
,
usingWorker
)
{
compiler
.
event
.
register
(
'loadingCompiler'
,
this
,
function
(
url
,
usingWorker
)
{
...
@@ -542,7 +551,7 @@ var run = function () {
...
@@ -542,7 +551,7 @@ var run = function () {
compiler
.
event
.
register
(
'compilerLoaded'
,
this
,
function
(
version
)
{
compiler
.
event
.
register
(
'compilerLoaded'
,
this
,
function
(
version
)
{
previousInput
=
''
previousInput
=
''
setVersionText
(
version
)
setVersionText
(
version
)
compiler
.
compile
()
runCompiler
()
if
(
queryParams
.
get
().
endpointurl
)
{
if
(
queryParams
.
get
().
endpointurl
)
{
executionContext
.
setEndPointUrl
(
queryParams
.
get
().
endpointurl
)
executionContext
.
setEndPointUrl
(
queryParams
.
get
().
endpointurl
)
...
@@ -604,7 +613,7 @@ var run = function () {
...
@@ -604,7 +613,7 @@ var run = function () {
var
optimize
=
document
.
querySelector
(
'#optimize'
).
checked
var
optimize
=
document
.
querySelector
(
'#optimize'
).
checked
queryParams
.
update
({
optimize
:
optimize
})
queryParams
.
update
({
optimize
:
optimize
})
compiler
.
setOptimize
(
optimize
)
compiler
.
setOptimize
(
optimize
)
compiler
.
compile
()
runCompiler
()
})
})
// ----------------- version selector-------------
// ----------------- version selector-------------
...
...
src/app/compiler.js
View file @
6698a74e
...
@@ -11,7 +11,7 @@ var EventManager = require('../lib/eventManager')
...
@@ -11,7 +11,7 @@ var EventManager = require('../lib/eventManager')
/*
/*
trigger compilationFinished, compilerLoaded, compilationStarted
trigger compilationFinished, compilerLoaded, compilationStarted
*/
*/
function
Compiler
(
editor
,
handleImportCall
)
{
function
Compiler
(
handleImportCall
)
{
var
self
=
this
var
self
=
this
this
.
event
=
new
EventManager
()
this
.
event
=
new
EventManager
()
...
@@ -28,8 +28,8 @@ function Compiler (editor, handleImportCall) {
...
@@ -28,8 +28,8 @@ function Compiler (editor, handleImportCall) {
optimize
=
_optimize
optimize
=
_optimize
}
}
var
internalCompile
=
function
(
files
,
missingInputs
)
{
var
internalCompile
=
function
(
files
,
target
,
missingInputs
)
{
gatherImports
(
files
,
missingInputs
,
function
(
error
,
input
)
{
gatherImports
(
files
,
target
,
missingInputs
,
function
(
error
,
input
)
{
if
(
error
)
{
if
(
error
)
{
self
.
lastCompilationResult
=
null
self
.
lastCompilationResult
=
null
self
.
event
.
trigger
(
'compilationFinished'
,
[
false
,
{
'error'
:
error
},
files
])
self
.
event
.
trigger
(
'compilationFinished'
,
[
false
,
{
'error'
:
error
},
files
])
...
@@ -39,13 +39,9 @@ function Compiler (editor, handleImportCall) {
...
@@ -39,13 +39,9 @@ function Compiler (editor, handleImportCall) {
})
})
}
}
var
compile
=
function
()
{
var
compile
=
function
(
files
,
target
)
{
self
.
event
.
trigger
(
'compilationStarted'
,
[])
self
.
event
.
trigger
(
'compilationStarted'
,
[])
var
input
=
editor
.
getValue
()
internalCompile
(
files
,
target
)
var
files
=
{}
files
[
utils
.
fileNameFromKey
(
editor
.
getCacheFile
())]
=
input
internalCompile
(
files
)
}
}
this
.
compile
=
compile
this
.
compile
=
compile
...
@@ -124,7 +120,7 @@ function Compiler (editor, handleImportCall) {
...
@@ -124,7 +120,7 @@ function Compiler (editor, handleImportCall) {
self
.
event
.
trigger
(
'compilationFinished'
,
[
false
,
data
,
source
])
self
.
event
.
trigger
(
'compilationFinished'
,
[
false
,
data
,
source
])
}
else
if
(
missingInputs
!==
undefined
&&
missingInputs
.
length
>
0
)
{
}
else
if
(
missingInputs
!==
undefined
&&
missingInputs
.
length
>
0
)
{
// try compiling again with the new set of inputs
// try compiling again with the new set of inputs
internalCompile
(
source
.
sources
,
missingInputs
)
internalCompile
(
source
.
sources
,
source
.
target
,
missingInputs
)
}
else
{
}
else
{
data
=
updateInterface
(
data
)
data
=
updateInterface
(
data
)
...
@@ -212,10 +208,10 @@ function Compiler (editor, handleImportCall) {
...
@@ -212,10 +208,10 @@ function Compiler (editor, handleImportCall) {
worker
.
postMessage
({
cmd
:
'loadVersion'
,
data
:
url
})
worker
.
postMessage
({
cmd
:
'loadVersion'
,
data
:
url
})
}
}
function
gatherImports
(
files
,
importHints
,
cb
)
{
function
gatherImports
(
files
,
target
,
importHints
,
cb
)
{
importHints
=
importHints
||
[]
importHints
=
importHints
||
[]
if
(
!
compilerAcceptsMultipleFiles
)
{
if
(
!
compilerAcceptsMultipleFiles
)
{
cb
(
null
,
files
[
editor
.
getCacheFile
()
])
cb
(
null
,
files
[
target
])
return
return
}
}
...
@@ -250,14 +246,14 @@ function Compiler (editor, handleImportCall) {
...
@@ -250,14 +246,14 @@ function Compiler (editor, handleImportCall) {
cb
(
err
)
cb
(
err
)
}
else
{
}
else
{
files
[
m
]
=
content
files
[
m
]
=
content
gatherImports
(
files
,
importHints
,
cb
)
gatherImports
(
files
,
target
,
importHints
,
cb
)
}
}
})
})
return
return
}
}
cb
(
null
,
{
'sources'
:
files
})
cb
(
null
,
{
'sources'
:
files
,
'target'
:
target
})
}
}
function
truncateVersion
(
version
)
{
function
truncateVersion
(
version
)
{
...
...
test/compiler-test.js
View file @
6698a74e
...
@@ -3,17 +3,14 @@
...
@@ -3,17 +3,14 @@
var
test
=
require
(
'tape'
)
var
test
=
require
(
'tape'
)
var
Compiler
=
require
(
'../src/app/compiler'
)
var
Compiler
=
require
(
'../src/app/compiler'
)
var
EventManager
=
require
(
'../src/lib/eventManager'
)
test
(
'compiler.compile smoke'
,
function
(
t
)
{
test
(
'compiler.compile smoke'
,
function
(
t
)
{
t
.
plan
(
1
)
t
.
plan
(
1
)
var
noop
=
function
()
{}
var
noop
=
function
()
{}
var
getCacheFile
=
function
()
{
return
'fakeCacheFile'
}
var
fakeImport
=
function
(
url
,
cb
)
{
cb
(
'Not implemented'
)
}
var
fakeEditor
=
{
onChangeSetup
:
noop
,
clearAnnotations
:
noop
,
getValue
:
noop
,
setCacheFileContent
:
noop
,
getCacheFile
:
getCacheFile
}
var
compiler
=
new
Compiler
(
fakeImport
)
var
fakeQueryParams
=
{
get
:
function
()
{
return
{}
}}
var
compiler
=
new
Compiler
(
fakeEditor
,
fakeQueryParams
,
null
,
null
,
new
EventManager
())
compiler
.
setCompileJSON
(
noop
)
compiler
.
setCompileJSON
(
noop
)
compiler
.
compile
()
compiler
.
compile
(
{
'test'
:
''
},
'test'
)
t
.
ok
(
compiler
)
t
.
ok
(
compiler
)
})
})
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment