Skip to content

Conversation

@Yongqu
Copy link
Contributor

@Yongqu Yongqu commented Feb 22, 2016

module runtime #2: merge change with parser; setup localexport slot to facilitate bytecode generation. Setup ModuleRecord list in JavascriptLibrary to allow ModuleId lookup. Setup ModuleId for bytecode generation. When a new modulerecord is created, it is added to a list (moduleRecordList) in JavascriptLibrary. the index is the moduleID. There is a dependent childModuleRecord dictionary with specifier as key and modulerecord as value, this way we can generate the bytecode using the moduleId. All the local exports are stored in the localExportSlots, used in bytecode generator. Temporary disable anonymous function/class export. Need to fix the anonymous function binding.

…tate bytecode

generation. Setup ModuleRecord list in JavascriptLibrary to allow ModuleId lookup.
Setup ModuleId for bytecode generation.
When a new modulerecord is created, it is added to a list (moduleRecordList) in
JavascriptLibrary. the index is the moduleID. There is a dependent childModuleRecord
dictionary with specifier as key and modulerecord as value, this way we can generate
the bytecode using the moduleId.
All the local exports are stored in the localExportSlots, used in bytecode generator.
Temporary disable anonymous function/class export. Need to fix the anonymous function binding.
@Yongqu
Copy link
Contributor Author

Yongqu commented Feb 23, 2016

found the problem with class support in parser, thanks to help from @boingoing . I'll update next time.

RT_ERROR_MSG(JSERR_RegExpExecInvalidReturnType, 5641, "%s: Return value of RegExp 'exec' is not an Object and is not null", "Return value of RegExp 'exec' is not an Object and is not null", kjstTypeError, 0)

RT_ERROR_MSG(JSERR_ProxyTrapReturnedFalse, 5642, "Proxy trap `%s` returned false", "Proxy trap returned false", kjstTypeError, 0)
RT_ERROR_MSG(JSERR_ModuleResolveExport, 5643, "module export %s cannot be resolved", "Module export cannot be resolved", kjstSyntaxError, 0)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The casing for "module" in this area is inconsistent. Seems they should all be capitalized?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will do.

@boingoing
Copy link
Contributor

Looks good to me!

@chakrabot chakrabot merged commit d4ac98e into master Feb 23, 2016
chakrabot pushed a commit that referenced this pull request Feb 23, 2016
Merge pull request #363 from pr/yongqu/module
module runtime #2: merge change with parser; setup localexport slot to facilitate bytecode generation.  Setup ModuleRecord list in JavascriptLibrary to allow ModuleId lookup. Setup ModuleId for bytecode generation. When a new modulerecord is created, it is added to a list (moduleRecordList) in JavascriptLibrary. the index is the moduleID. There is a dependent childModuleRecord dictionary with specifier as key and modulerecord as value, this way we can generate the bytecode using the moduleId. All the local exports are stored in the localExportSlots, used in bytecode generator. Temporary disable anonymous function/class export. Need to fix the anonymous function binding.
@Yongqu Yongqu deleted the pr/yongqu/module branch February 23, 2016 15:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants