java.lang.Object
simula.compiler.syntaxClass.declaration.ProcedureSpecification
- All Implemented Interfaces:
Externalizable
,Serializable
Procedure Specification.
Simula Standard: 5.5.3 Virtual quantities Simula Standard: 6.3 External procedure declaration procedure-specification = [ type ] PROCEDURE procedure-identifier procedure-head empty-body procedure-head = [ formal-parameter-part ; [ mode-part ] specification-part ] ; empty-body = dummy-statement procedure-identifier = identifier formal-parameter-part = "(" formal-parameter { , formal-parameter } ")" formal-parameter = identifier specification-part = specifier identifier-list ; { specifier identifier-list ; } specifier = type [ array | procedure ] | label | switch mode-part = name-part [ value-part ] | value-part [ name-part ] name-part = name identifier-list ; value-part = value identifier-list ; identifier-list = identifier { , identifier }Link to GitHub: Source File.
- Author:
- SIMULA Standards Group, Øystein Myhre Andersen
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprivate String
The procedure identifier.The parameter list.The procedure's type. -
Constructor Summary
ModifierConstructorDescriptionDefault constructor used by Externalization.private
ProcedureSpecification
(String identifier, Type type, Vector<Parameter> pList) Create a new ProcedureSpecification -
Method Summary
Modifier and TypeMethodDescription(package private) void
doChecking
(DeclarationScope scope) Perform semantic checking.(package private) static ProcedureSpecification
Procedure Specification.void
readExternal
(ObjectInput inpt) toString()
void
writeExternal
(ObjectOutput oupt)
-
Field Details
-
identifier
The procedure identifier. -
type
The procedure's type. -
parameterList
The parameter list.
-
-
Constructor Details
-
ProcedureSpecification
Create a new ProcedureSpecification- Parameters:
identifier
- procedure-identifiertype
- procedure's type or nullpList
- the parameter lList
-
ProcedureSpecification
public ProcedureSpecification()Default constructor used by Externalization.
-
-
Method Details
-
expectProcedureSpecification
Procedure Specification.Syntax: procedure-specification = [ type ] PROCEDURE procedure-identifier procedure-head empty-body procedure-head = [ formal-parameter-part ; [ mode-part ] procedure-specification-part ] ; empty-body = dummy-statement procedure-identifier = identifier
Precondition: [ type ] PROCEDURE is already read.- Parameters:
type
- procedure's type- Returns:
- a newly created ProcedureSpecification
-
doChecking
Perform semantic checking.- Parameters:
scope
- the DeclarationScope
-
toString
-
writeExternal
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-
readExternal
- Specified by:
readExternal
in interfaceExternalizable
- Throws:
IOException
ClassNotFoundException
-