chriseth
eab085baf6
Merge pull request #1414 from LefterisJP/sol_notImplementedFuncs
...
Interface contracts
2015-03-30 19:33:30 +02:00
Lefteris Karapetsas
85bb056993
Abstract contract and inheritance
...
- Checking the linearized base contracts for abstract functions and
handle their existence appropriately
- If a contract is abstract it can't be created with new
- An abstract contract is not compiled (no backend code is generated)
- Of course tests
2015-03-27 15:15:34 +01:00
Liana Husikyan
a3d829d074
added externalTypes function to functionType
...
removed flag for externalSigniture
2015-03-27 13:28:32 +01:00
Lefteris Karapetsas
a7e78fadf5
Moving contract fullyImplemented check to TypeRequirements
2015-03-27 11:53:17 +01:00
Liana Husikyan
b1ca27ea93
two more tests
...
style fixes
2015-03-26 14:11:24 +01:00
Lefteris Karapetsas
9d6d7ccab8
Parsing of not fully implemented functions
...
- Adding the possibility of omitting a function body by simply ending a
function definition with a semicolon
- Such a function is marked as not fully implemented and any contract
that contains such a function is considered a not fully implemented contract
2015-03-25 14:26:05 +01:00
Liana Husikyan
8f747aab0f
tests for external types
2015-03-25 14:20:13 +01:00
Liana Husikyan
9986b072ad
renamed externalTypes to externalSignature
2015-03-25 13:59:46 +01:00
Liana Husikyan
701b34fbeb
renamed getCanonicalSignature
...
added externalTypes instead of types for interface functions
added simple test
todo
testing
2015-03-25 13:59:46 +01:00
Liana Husikyan
ed757ba5bf
added test to check anonymous events with user specified topics
...
added initial value for m_anonymous of EventDefinition
2015-03-17 14:25:23 +01:00
Liana Husikyan
46cbb5525c
added anonymous to ABI
2015-03-17 14:25:23 +01:00
Liana Husikyan
5a5577f5a5
changed the position of 'anonymous' keyword: event <name>() anonymous.
...
- style changes
2015-03-17 14:25:13 +01:00
Liana Husikyan
2986ecbd75
Added anonymous flag to event.
...
added test
2015-03-17 10:51:03 +01:00
Liana Husikyan
27a89a36e1
restyleing
...
removed unnecessary check
2015-03-16 14:45:11 +01:00
Liana Husikyan
ebb4d5e298
- added more tests to check constant specifier implementation
...
- deny use of const for local variables
- deny unitialized const variables
- only int, fixed strings, and enums can be declaired as const
2015-03-16 10:46:46 +01:00
Liana Husikyan
7d6357ae53
- added isPartOfExternalInterface to Declaration
...
- changed position for the constant specifier. now it goes after type: <type> <constant> <name> = <value>
- removed tests for constant functions, checkings for constant function doesn't belong to this story
2015-03-16 10:46:46 +01:00
Liana Husikyan
67cd3a7180
added parsing for constant variables
2015-03-16 10:46:46 +01:00
chriseth
28e88903dc
Fix type checks for storage variable initializer.
2015-03-06 13:47:32 +01:00
Gav Wood
9aea119e54
Add date/time language to solidity.
2015-03-06 12:46:23 +01:00
Liana Husikyan
9b6b2759b4
removed unused member
...
added some comments for ModifierInvocation::checkTypeRequirements
cleanup
2015-03-02 14:28:13 +01:00
Liana Husikyan
e9238e15b4
Implemented passing arguments to the base constructor.
2015-03-02 14:28:08 +01:00
Lefteris Karapetsas
4f13859f8c
Using normal pointer in getInheritableMembers()
2015-03-02 12:08:32 +01:00
Lefteris Karapetsas
7db2b6fbdb
VisibleInDerivedContracts() is now virtual()
...
- Plus an extra test for internal visibility in a base class variable
2015-03-02 11:51:13 +01:00
Lefteris Karapetsas
5e4665b84d
Adding inheritable members to a contract
2015-03-02 11:51:13 +01:00
Lefteris Karapetsas
7f3a544d2a
Move SourceLocation to evmcore
2015-02-25 12:19:02 +01:00
Lefteris Karapetsas
fb328b778c
Changes after rebase on top of Array Parsing
2015-02-24 17:31:06 +01:00
Lefteris Karapetsas
1891020ffb
Moving Source Location libdevcore
...
- Big plus is we now remove the useless header libsolibity/BaseTypes.h
2015-02-24 17:16:22 +01:00
Gav Wood
44db8c26db
Merge pull request #1100 from chriseth/sol_arrays
...
Parsing support for arrays.
2015-02-23 15:19:07 +01:00
Christian
a17108e3bc
Replaced "inheritable" by "internal".
2015-02-22 19:37:54 +01:00
Christian
261786d909
Allow conversion to dynamic arrays and update grammar.
2015-02-21 18:25:08 +01:00
Christian
5e32083179
Parsing of array types and basic implementation.
2015-02-21 15:10:01 +01:00
Liana Husikyan
858acaa193
corrected accept for variableDeclaration
...
changes after code review
2015-02-20 22:51:16 +01:00
Liana Husikyan
52050201e3
Inline member initialisation
...
renamed VariableDefinition class to VariableDeclarationStatement
added tests
2015-02-20 22:50:34 +01:00
Lefteris Karapetsas
26132363d5
Bugfix for functions override
...
- Functions with byte array type parameters can now be safely
overriden. Parameter location is now set at the right place.
- Also made a test for the fix
2015-02-19 17:43:53 +01:00
Christian
8d658ce5a2
Rename "protected" to "inheritable".
2015-02-18 13:35:12 +01:00
Christian
f7ba85e0ec
No write access to parameters of external functions.
2015-02-16 19:25:24 +01:00
Christian
3e29ec2cb2
"external" visibility specifier.
2015-02-16 19:24:07 +01:00
Christian
c944976d00
Some changes to enums.
2015-02-14 13:35:57 +01:00
Lefteris Karapetsas
fbd39323af
Moving getMemberValue from EnumDefinition to EnumType
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
b2575b4bcb
Addressing issues with Enums in Solidity
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
b20ce4451b
Typo in EnumValue
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
52808f67fa
EnumDeclaration -> EnumValue
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
012e32942d
Enum type conversion and member value access.
...
- Added tests for the type conversion part.
- Enum member value access still needs some work
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
c3a9ae0b06
Introducing EnumType and some Parser tests
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
86e1d671cc
Parsing an enum AST node
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
a295417f34
Parsing enums for Solidity - WIP
2015-02-13 23:16:14 +01:00
Lefteris Karapetsas
148a7cb3e1
ExpressionCompiler's enums to CamelCase
2015-02-09 14:35:31 +01:00
Lefteris Karapetsas
6f621f8486
Changing Solidity Code to use CamelCase enum values
2015-02-09 14:00:12 +01:00
Liana Husikyan
2a5c2578bd
- implemented Empty parameter name story. Now the name of input/return parameters of function can be not specified.
...
- added appropriate tests
Conflicts:
test/SolidityEndToEndTest.cpp
test/SolidityNameAndTypeResolution.cpp
2015-02-09 02:06:30 +01:00
guanqun
ca6456e7da
remove AST.h Utils.h's x permission
2015-02-07 23:10:22 +08:00