mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #1087 from chriseth/sol_changeProtectedToInheritable
Rename "protected" to "inheritable".
This commit is contained in:
commit
a2f5ea88b8
6
AST.h
6
AST.h
@ -133,7 +133,7 @@ class Declaration: public ASTNode
|
||||
{
|
||||
public:
|
||||
/// Visibility ordered from restricted to unrestricted.
|
||||
enum class Visibility { Default, Private, Protected, Public, External };
|
||||
enum class Visibility { Default, Private, Inheritable, Public, External };
|
||||
|
||||
Declaration(Location const& _location, ASTPointer<ASTString> const& _name,
|
||||
Visibility _visibility = Visibility::Default):
|
||||
@ -144,7 +144,7 @@ public:
|
||||
Visibility getVisibility() const { return m_visibility == Visibility::Default ? getDefaultVisibility() : m_visibility; }
|
||||
bool isPublic() const { return getVisibility() >= Visibility::Public; }
|
||||
bool isVisibleInContract() const { return getVisibility() != Visibility::External; }
|
||||
bool isVisibleInDerivedContracts() const { return isVisibleInContract() && getVisibility() >= Visibility::Protected; }
|
||||
bool isVisibleInDerivedContracts() const { return isVisibleInContract() && getVisibility() >= Visibility::Inheritable; }
|
||||
|
||||
/// @returns the scope this declaration resides in. Can be nullptr if it is the global scope.
|
||||
/// Available only after name and type resolution step.
|
||||
@ -453,7 +453,7 @@ public:
|
||||
bool isIndexed() const { return m_isIndexed; }
|
||||
|
||||
protected:
|
||||
Visibility getDefaultVisibility() const override { return Visibility::Protected; }
|
||||
Visibility getDefaultVisibility() const override { return Visibility::Inheritable; }
|
||||
|
||||
private:
|
||||
ASTPointer<TypeName> m_typeName; ///< can be empty ("var")
|
||||
|
@ -186,8 +186,8 @@ Declaration::Visibility Parser::parseVisibilitySpecifier(Token::Value _token)
|
||||
Declaration::Visibility visibility(Declaration::Visibility::Default);
|
||||
if (_token == Token::Public)
|
||||
visibility = Declaration::Visibility::Public;
|
||||
else if (_token == Token::Protected)
|
||||
visibility = Declaration::Visibility::Protected;
|
||||
else if (_token == Token::Inheritable)
|
||||
visibility = Declaration::Visibility::Inheritable;
|
||||
else if (_token == Token::Private)
|
||||
visibility = Declaration::Visibility::Private;
|
||||
else if (_token == Token::External)
|
||||
|
4
Token.h
4
Token.h
@ -162,7 +162,7 @@ namespace solidity
|
||||
K(New, "new", 0) \
|
||||
K(Public, "public", 0) \
|
||||
K(Private, "private", 0) \
|
||||
K(Protected, "protected", 0) \
|
||||
K(Inheritable, "inheritable", 0) \
|
||||
K(Return, "return", 0) \
|
||||
K(Returns, "returns", 0) \
|
||||
K(Struct, "struct", 0) \
|
||||
@ -380,7 +380,7 @@ public:
|
||||
static bool isCountOp(Value op) { return op == Inc || op == Dec; }
|
||||
static bool isShiftOp(Value op) { return (SHL <= op) && (op <= SHR); }
|
||||
static bool isVisibilitySpecifier(Value op) { return isVariableVisibilitySpecifier(op) || op == External; }
|
||||
static bool isVariableVisibilitySpecifier(Value op) { return op == Public || op == Private || op == Protected; }
|
||||
static bool isVariableVisibilitySpecifier(Value op) { return op == Public || op == Private || op == Inheritable; }
|
||||
static bool isEtherSubdenomination(Value op) { return op == SubWei || op == SubSzabo || op == SubFinney || op == Token::SubEther; }
|
||||
|
||||
// Returns a string corresponding to the JS token string
|
||||
|
@ -6,10 +6,10 @@ ContractPart = StateVariableDeclaration | StructDefinition | ModifierDefinition
|
||||
InheritanceSpecifier = Identifier ( '(' Expression ( ',' Expression )* ')' )?
|
||||
StructDefinition = 'struct' Identifier '{'
|
||||
( VariableDeclaration (';' VariableDeclaration)* )? '}
|
||||
StateVariableDeclaration = TypeName ( 'public' | 'protected' | 'private' )? Identifier ';'
|
||||
StateVariableDeclaration = TypeName ( 'public' | 'inheritable' | 'private' )? Identifier ';'
|
||||
ModifierDefinition = 'modifier' Identifier ParameterList? Block
|
||||
FunctionDefinition = 'function' Identifier ParameterList
|
||||
( Identifier | 'constant' | 'public' | 'protected' | 'private' )*
|
||||
( Identifier | 'constant' | 'external' | 'public' | 'inheritable' | 'private' )*
|
||||
( 'returns' ParameterList )? Block
|
||||
|
||||
EnumValue = Identifier
|
||||
|
Loading…
Reference in New Issue
Block a user