Commit 3c5158fe authored by Jürg Billeter's avatar Jürg Billeter Committed by Jürg Billeter

fix build when using non-null types

2008-04-13  Juerg Billeter  <j@bitron.ch>

	* */*.vala: fix build when using non-null types

svn path=/trunk/; revision=1212
parent 2c3dc37c
2008-04-13 Jürg Billeter <j@bitron.ch>
* */*.vala: fix build when using non-null types
2008-04-13 Jürg Billeter <j@bitron.ch>
* vala/valacodecontext.vala, vala/valasemanticanalyzer.vala,
......
/* valaccodeenum.vala
*
* Copyright (C) 2006-2007 Jürg Billeter
* Copyright (C) 2006-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -34,7 +34,7 @@ public class Vala.CCodeEnum : CCodeNode {
private Gee.List<CCodeEnumValue> values = new ArrayList<CCodeEnumValue> ();
public CCodeEnum (string name = null) {
public CCodeEnum (string? name = null) {
this.name = name;
}
......
/* valaccodeenumvalue.vala
*
* Copyright (C) 2007 Jürg Billeter
* Copyright (C) 2007-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -35,11 +35,11 @@ public class Vala.CCodeEnumValue : CCodeNode {
/**
* The numerical representation of this enum value.
*/
public CCodeExpression value { get; set; }
public CCodeExpression? value { get; set; }
public CCodeEnumValue (string name, CCodeExpression value = null) {
this.value = value;
public CCodeEnumValue (string name, CCodeExpression? value = null) {
this.name = name;
this.value = value;
}
public override void write (CCodeWriter writer) {
......
......@@ -30,11 +30,11 @@ public class Vala.CCodeFunctionCall : CCodeExpression {
/**
* The function to be called.
*/
public CCodeExpression call { get; set; }
public CCodeExpression? call { get; set; }
private Gee.List<CCodeExpression> arguments = new ArrayList<CCodeExpression> ();
public CCodeFunctionCall (CCodeExpression call = null) {
public CCodeFunctionCall (CCodeExpression? call = null) {
this.call = call;
}
......
/* valaccodeifstatement.vala
*
* Copyright (C) 2006-2007 Jürg Billeter
* Copyright (C) 2006-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -39,9 +39,9 @@ public class Vala.CCodeIfStatement : CCodeStatement {
/**
* The optional statement to be evaluated if the condition doesn't hold.
*/
public CCodeStatement false_statement { get; set construct; }
public CCodeStatement? false_statement { get; set construct; }
public CCodeIfStatement (CCodeExpression cond, CCodeStatement true_stmt, CCodeStatement false_stmt = null) {
public CCodeIfStatement (CCodeExpression cond, CCodeStatement true_stmt, CCodeStatement? false_stmt = null) {
condition = cond;
true_statement = true_stmt;
false_statement = false_stmt;
......
/* valaccodereturnstatement.vala
*
* Copyright (C) 2006-2007 Jürg Billeter
* Copyright (C) 2006-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -29,9 +29,9 @@ public class Vala.CCodeReturnStatement : CCodeStatement {
/**
* The optional expression to return.
*/
public CCodeExpression return_expression { get; set; }
public CCodeExpression? return_expression { get; set; }
public CCodeReturnStatement (CCodeExpression expr = null) {
public CCodeReturnStatement (CCodeExpression? expr = null) {
return_expression = expr;
}
......
......@@ -34,15 +34,15 @@ public class Vala.CCodeVariableDeclarator : CCodeDeclarator {
/**
* The optional initializer expression.
*/
public CCodeExpression initializer { get; set; }
public CCodeVariableDeclarator (string _name) {
name = _name;
public CCodeExpression? initializer { get; set; }
public CCodeVariableDeclarator (string name) {
this.name = name;
}
public CCodeVariableDeclarator.with_initializer (string _name, CCodeExpression init) {
name = _name;
initializer = init;
public CCodeVariableDeclarator.with_initializer (string name, CCodeExpression? initializer) {
this.name = name;
this.initializer = initializer;
}
public override void write (CCodeWriter writer) {
......
/* valaccodewriter.vala
*
* Copyright (C) 2006-2007 Jürg Billeter
* Copyright (C) 2006-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -107,7 +107,7 @@ public class Vala.CCodeWriter : Object {
/**
* Writes tabs according to the current indent level.
*/
public void write_indent (CCodeLineDirective line = null) {
public void write_indent (CCodeLineDirective? line = null) {
if (line_directives && line != null) {
line.write (this);
}
......
......@@ -146,7 +146,7 @@ class Vala.Compiler : Object {
context.library = library;
context.assert = !disable_assert;
context.checking = !disable_checking;
context.non_null = non_null || non_null_experimental;
context.non_null = non_null || non_null_experimental || true;
context.non_null_experimental = non_null_experimental;
Report.set_verbose_errors (verbose);
......@@ -293,7 +293,11 @@ class Vala.Compiler : Object {
if (!ccode_only) {
var ccompiler = new CCodeCompiler ();
ccompiler.compile (context, cc_command, cc_options);
if (cc_options == null) {
ccompiler.compile (context, cc_command, cc_options);
} else {
ccompiler.compile (context, cc_command, new string[] { null });
}
}
return quit ();
......
......@@ -49,7 +49,7 @@ public class Vala.CCodeCompiler : Object {
* @param context a code context
*/
[NoArrayLength]
public void compile (CodeContext context, string cc_command, string[] cc_options) {
public void compile (CodeContext context, string? cc_command, string[] cc_options) {
string pc = "pkg-config --cflags";
if (!context.compile_only) {
pc += " --libs";
......@@ -94,10 +94,8 @@ public class Vala.CCodeCompiler : Object {
cmdline += " -o " + Shell.quote (output);
}
cmdline += " " + pkgflags;
if (cc_options != null) {
foreach (string cc_option in cc_options) {
cmdline += " " + cc_option;
}
foreach (string cc_option in cc_options) {
cmdline += " " + cc_option;
}
/* make sure include files can be found if -d is used */
......
......@@ -1171,7 +1171,7 @@ public class Vala.CCodeGenerator : CodeGenerator {
list.ccodenode = clist;
}
public VariableDeclarator get_temp_variable_declarator (DataType type, bool takes_ownership = true, CodeNode node_reference = null) {
public VariableDeclarator get_temp_variable_declarator (DataType type, bool takes_ownership = true, CodeNode? node_reference = null) {
var decl = new VariableDeclarator ("_tmp%d".printf (next_temp_var_id));
decl.type_reference = type.copy ();
decl.type_reference.is_ref = false;
......@@ -1198,7 +1198,7 @@ public class Vala.CCodeGenerator : CodeGenerator {
}
}
private CCodeExpression get_dup_func_expression (DataType type, SourceReference source_reference) {
private CCodeExpression get_dup_func_expression (DataType type, SourceReference? source_reference) {
if (type.data_type != null) {
string dup_function;
if (type.data_type.is_reference_counting ()) {
......@@ -3239,7 +3239,7 @@ public class Vala.CCodeGenerator : CodeGenerator {
return result;
}
public CCodeExpression get_implicit_cast_expression (CCodeExpression cexpr, DataType expression_type, DataType target_type) {
public CCodeExpression get_implicit_cast_expression (CCodeExpression cexpr, DataType? expression_type, DataType target_type) {
if (null == expression_type) {
return cexpr;
}
......
......@@ -24,7 +24,7 @@
using GLib;
public class Vala.CCodeGenerator {
private void process_cmember (MemberAccess expr, CCodeExpression pub_inst, DataType base_type) {
private void process_cmember (MemberAccess expr, CCodeExpression? pub_inst, DataType? base_type) {
if (expr.symbol_reference is Method) {
var m = (Method) expr.symbol_reference;
......
......@@ -36,7 +36,7 @@ public class Vala.CCodeGenerator {
}
}
public string get_signal_marshaller_function (Signal sig, string prefix = null) {
public string get_signal_marshaller_function (Signal sig, string? prefix = null) {
var signature = get_signal_signature (sig);
string ret;
var params = sig.get_parameters ();
......
......@@ -27,7 +27,7 @@ using Gee;
* Represents a dynamic bound DBus method.
*/
public class Vala.DBusMethod : Method {
public DBusMethod (string name, DataType return_type, SourceReference source_reference = null) {
public DBusMethod (string name, DataType return_type, SourceReference? source_reference = null) {
this.return_type = return_type;
this.source_reference = source_reference;
this.name = name;
......
......@@ -26,7 +26,7 @@ using GLib;
* Represents a dynamic bound DBus signal.
*/
public class Vala.DBusSignal : Signal {
public DBusSignal (string name, DataType return_type, SourceReference source_reference = null) {
public DBusSignal (string name, DataType return_type, SourceReference? source_reference = null) {
this.return_type = return_type;
this.source_reference = source_reference;
this.name = name;
......
......@@ -15,7 +15,8 @@ public class Sample : Object {
get { return _read_only; }
}
public Sample(construct string! name) {
public Sample (string name) {
this.name = name;
}
construct {
......
......@@ -47,7 +47,7 @@ public class Vala.AddressofExpression : Expression {
* @param inner variable whose address is to be computed
* @return newly created address-of expression
*/
public AddressofExpression (Expression inner, SourceReference source_reference = null) {
public AddressofExpression (Expression inner, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.inner = inner;
}
......
/* valaarraycreationexpression.vala
*
* Copyright (C) 2006-2007 Raffaele Sandrini, Jürg Billeter
* Copyright (C) 2006-2008 Raffaele Sandrini, Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -52,7 +52,7 @@ public class Vala.ArrayCreationExpression : Expression {
/**
* The root array initializer list.
*/
public InitializerList initializer_list { get; set construct; }
public InitializerList? initializer_list { get; set construct; }
private DataType _element_type;
......@@ -70,11 +70,11 @@ public class Vala.ArrayCreationExpression : Expression {
return new ReadOnlyList<Expression> (sizes);
}
public ArrayCreationExpression (DataType element_type, int rank, InitializerList initializer_list, SourceReference source_reference) {
public ArrayCreationExpression (DataType element_type, int rank, InitializerList? initializer_list, SourceReference source_reference) {
this.element_type = element_type;
this.rank = rank;
this.initializer_list = initializer_list;
this.source_reference = source_reference;
this.element_type = element_type;
}
public override void accept_children (CodeVisitor visitor) {
......
......@@ -40,7 +40,7 @@ public class Vala.ArrayType : ReferenceType {
private ArrayResizeMethod resize_method;
private ArrayMoveMethod move_method;
public ArrayType (DataType element_type, int rank, SourceReference source_reference) {
public ArrayType (DataType element_type, int rank, SourceReference? source_reference) {
this.element_type = element_type;
this.rank = rank;
this.source_reference = source_reference;
......
......@@ -67,7 +67,7 @@ public class Vala.Assignment : Expression {
* @param source_reference reference to source code
* @return newly created assignment
*/
public Assignment (Expression left, Expression right, AssignmentOperator operator = AssignmentOperator.SIMPLE, SourceReference source_reference = null) {
public Assignment (Expression left, Expression right, AssignmentOperator operator = AssignmentOperator.SIMPLE, SourceReference? source_reference = null) {
this.right = right;
this.operator = operator;
this.source_reference = source_reference;
......
......@@ -44,9 +44,9 @@ public class Vala.Attribute : CodeNode {
* @param source_reference reference to source code
* @return newly created attribute
*/
public Attribute (string name, SourceReference source_reference) {
this.source_reference = source_reference;
public Attribute (string name, SourceReference? source_reference) {
this.name = name;
this.source_reference = source_reference;
}
/**
......
......@@ -32,7 +32,7 @@ public class Vala.BaseAccess : Expression {
* @param source reference to source code
* @return newly created base access expression
*/
public BaseAccess (SourceReference source = null) {
public BaseAccess (SourceReference? source = null) {
source_reference = source;
}
......
......@@ -71,7 +71,7 @@ public class Vala.BinaryExpression : Expression {
* @param source reference to source code
* @return newly created binary expression
*/
public BinaryExpression (BinaryOperator op, Expression _left, Expression _right, SourceReference source = null) {
public BinaryExpression (BinaryOperator op, Expression _left, Expression _right, SourceReference? source = null) {
operator = op;
left = _left;
right = _right;
......
......@@ -41,7 +41,7 @@ public class Vala.Block : Symbol, Statement {
*
* @param source reference to source code
*/
public Block (SourceReference source_reference = null) {
public Block (SourceReference? source_reference = null) {
this.source_reference = source_reference;
}
......
......@@ -65,7 +65,7 @@ public class Vala.CatchClause : CodeNode {
* @param source_reference reference to source code
* @return newly created catch clause
*/
public CatchClause (DataType? type_reference, string variable_name, Block body, SourceReference source_reference = null) {
public CatchClause (DataType? type_reference, string variable_name, Block body, SourceReference? source_reference = null) {
this.type_reference = type_reference;
this.variable_name = variable_name;
this.body = body;
......
......@@ -111,7 +111,7 @@ public class Vala.Class : Typesymbol {
* @param source reference to source code
* @return newly created class
*/
public Class (string name, SourceReference source_reference = null) {
public Class (string name, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.name = name;
}
......@@ -456,7 +456,7 @@ public class Vala.Class : Typesymbol {
return lower_case_csuffix;
}
public override string get_lower_case_cname (string infix) {
public override string? get_lower_case_cname (string? infix) {
if (infix == null) {
infix = "";
}
......@@ -470,7 +470,7 @@ public class Vala.Class : Typesymbol {
return lower_case_cprefix;
}
public override string get_upper_case_cname (string infix) {
public override string get_upper_case_cname (string? infix) {
return get_lower_case_cname (infix).up ();
}
......
This diff is collapsed.
/* valaconstant.vala
*
* Copyright (C) 2006-2007 Jürg Billeter
* Copyright (C) 2006-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -57,11 +57,11 @@ public class Vala.Constant : Member, Lockable {
* @param source_reference reference to source code
* @return newly created constant
*/
public Constant (string name, DataType type_reference, Expression initializer, SourceReference source_reference) {
public Constant (string name, DataType type_reference, Expression? initializer, SourceReference? source_reference) {
this.name = name;
this.type_reference = type_reference;
this.initializer = initializer;
this.source_reference = source_reference;
this.name = name;
}
public override void accept (CodeVisitor visitor) {
......
......@@ -44,7 +44,7 @@ public class Vala.CreationMethod : Method {
* @param source_reference reference to source code
* @return newly created method
*/
public CreationMethod (string type_name, string name, SourceReference source_reference = null) {
public CreationMethod (string? type_name, string? name, SourceReference? source_reference = null) {
this.name = name;
this.source_reference = source_reference;
this.type_name = type_name;
......
......@@ -183,7 +183,7 @@ public abstract class Vala.DataType : CodeNode {
* name or null
* @return the lower case name to be used in C code
*/
public virtual string get_lower_case_cname (string infix = null) {
public virtual string? get_lower_case_cname (string? infix = null) {
return data_type.get_lower_case_cname (infix);
}
......
......@@ -94,10 +94,10 @@ public class Vala.Delegate : Typesymbol {
* @param source reference to source code
* @return newly created delegate
*/
public Delegate (string name, DataType return_type, SourceReference source_reference = null) {
public Delegate (string? name, DataType return_type, SourceReference? source_reference = null) {
this.name = name;
this.return_type = return_type;
this.source_reference = source_reference;
this.name = name;
}
construct {
......
......@@ -31,7 +31,7 @@ public class Vala.DeleteStatement : CodeNode, Statement {
*/
public Expression expression { get; set; }
public DeleteStatement (Expression expression, SourceReference source_reference = null) {
public DeleteStatement (Expression expression, SourceReference? source_reference = null) {
this.expression = expression;
this.source_reference = source_reference;
}
......
......@@ -47,7 +47,7 @@ public class Vala.Destructor : Symbol {
* @param source_reference reference to source code
* @return newly created destructor
*/
public Destructor (SourceReference source_reference = null) {
public Destructor (SourceReference? source_reference = null) {
this.source_reference = source_reference;
}
......
......@@ -63,7 +63,7 @@ public class Vala.DoStatement : CodeNode, Statement {
* @param source reference to source code
* @return newly created do statement
*/
public DoStatement (Block body, Expression condition, SourceReference source_reference = null) {
public DoStatement (Block body, Expression condition, SourceReference? source_reference = null) {
this.condition = condition;
this.source_reference = source_reference;
this.body = body;
......
......@@ -52,7 +52,7 @@ public class Vala.Enum : Typesymbol {
* @param source_reference reference to source code
* @return newly created enum
*/
public Enum (string name, SourceReference source_reference = null) {
public Enum (string name, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.name = name;
}
......@@ -141,14 +141,14 @@ public class Vala.Enum : Typesymbol {
return lower_case_csuffix;
}
public override string get_lower_case_cname (string infix) {
public override string? get_lower_case_cname (string? infix) {
if (infix == null) {
infix = "";
}
return "%s%s%s".printf (parent_symbol.get_lower_case_cprefix (), infix, get_lower_case_csuffix ());
}
public override string get_upper_case_cname (string infix = null) {
public override string get_upper_case_cname (string? infix = null) {
return get_lower_case_cname (infix).up ();
}
......
......@@ -39,7 +39,7 @@ public class Vala.EnumValue : Symbol {
* @param name enum value name
* @return newly created enum value
*/
public EnumValue (string name, SourceReference source_reference = null) {
public EnumValue (string name, SourceReference? source_reference = null) {
this.name = name;
this.source_reference = source_reference;
}
......@@ -51,7 +51,7 @@ public class Vala.EnumValue : Symbol {
* @param value numerical representation
* @return newly created enum value
*/
public EnumValue.with_value (string name, Expression value, SourceReference source_reference = null) {
public EnumValue.with_value (string name, Expression value, SourceReference? source_reference = null) {
this.name = name;
this.value = value;
this.source_reference = source_reference;
......
......@@ -41,7 +41,7 @@ public class Vala.ErrorDomain : Typesymbol {
* @param source_reference reference to source code
* @return newly created error domain
*/
public ErrorDomain (string name, SourceReference source_reference = null) {
public ErrorDomain (string name, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.name = name;
}
......@@ -130,14 +130,14 @@ public class Vala.ErrorDomain : Typesymbol {
return lower_case_csuffix;
}
public override string get_lower_case_cname (string infix) {
public override string? get_lower_case_cname (string? infix) {
if (infix == null) {
infix = "";
}
return "%s%s%s".printf (parent_symbol.get_lower_case_cprefix (), infix, get_lower_case_csuffix ());
}
public override string get_upper_case_cname (string infix) {
public override string get_upper_case_cname (string? infix) {
return get_lower_case_cname (null).up ();
}
......
......@@ -32,7 +32,7 @@ public class Vala.ErrorType : ReferenceType {
*/
public weak ErrorDomain? error_domain { get; set; }
public ErrorType (ErrorDomain? error_domain, SourceReference source_reference) {
public ErrorType (ErrorDomain? error_domain, SourceReference? source_reference) {
this.error_domain = error_domain;
this.data_type = error_domain;
this.source_reference = source_reference;
......@@ -76,7 +76,7 @@ public class Vala.ErrorType : ReferenceType {
return "GError*";
}
public override string get_lower_case_cname (string infix = null) {
public override string? get_lower_case_cname (string? infix = null) {
if (error_domain == null) {
if (infix == null) {
return "g_error";
......
......@@ -49,7 +49,7 @@ public class Vala.ExpressionStatement : CodeNode, Statement {
* @param source reference to source code
* @return newly created expression statement
*/
public ExpressionStatement (Expression expression, SourceReference source_reference = null) {
public ExpressionStatement (Expression expression, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.expression = expression;
}
......
/* valafield.vala
*
* Copyright (C) 2006-2007 Jürg Billeter
* Copyright (C) 2006-2008 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
......@@ -80,7 +80,7 @@ public class Vala.Field : Member, Lockable {
* @param source reference to source code
* @return newly created field
*/
public Field (string name, DataType type_reference, Expression initializer, SourceReference source_reference = null) {
public Field (string name, DataType type_reference, Expression? initializer, SourceReference? source_reference = null) {
this.type_reference = type_reference;
this.initializer = initializer;
this.source_reference = source_reference;
......
......@@ -90,7 +90,7 @@ public class Vala.FormalParameter : Symbol {
* @param source reference to source code
* @return newly created formal parameter
*/
public FormalParameter (string _name, DataType type, SourceReference source = null) {
public FormalParameter (string _name, DataType type, SourceReference? source = null) {
name = _name;
type_reference = type;
source_reference = source;
......@@ -100,7 +100,7 @@ public class Vala.FormalParameter : Symbol {
* Creates a new ellipsis parameter representing an indefinite number of
* parameters.
*/
public FormalParameter.with_ellipsis (SourceReference source = null) {
public FormalParameter.with_ellipsis (SourceReference? source = null) {
ellipsis = true;
source_reference = source;
}
......
......@@ -69,7 +69,7 @@ public class Vala.ForStatement : CodeNode, Statement {
* @param source_reference reference to source code
* @return newly created for statement
*/
public ForStatement (Expression condition, Block body, SourceReference source_reference = null) {
public ForStatement (Expression condition, Block body, SourceReference? source_reference = null) {
this.body = body;
this.source_reference = source_reference;
this.condition = condition;
......
......@@ -47,7 +47,7 @@ public class Vala.IfStatement : CodeNode, Statement {
/**
* The optional statement to be evaluated if the condition doesn't hold.
*/
public Block false_statement { get; set construct; }
public Block? false_statement { get; set construct; }
private Expression _condition;
......@@ -59,7 +59,7 @@ public class Vala.IfStatement : CodeNode, Statement {
* @param false_stmt statement to be evaluated if condition is false
* @return newly created if statement
*/
public IfStatement (Expression cond, Block true_stmt, Block false_stmt, SourceReference source) {
public IfStatement (Expression cond, Block true_stmt, Block? false_stmt, SourceReference? source) {
condition = cond;
true_statement = true_stmt;
false_statement = false_stmt;
......
......@@ -38,7 +38,7 @@ public class Vala.IntegerLiteral : Literal {
* @param source reference to source code
* @return newly created integer literal
*/
public IntegerLiteral (string i, SourceReference source = null) {
public IntegerLiteral (string i, SourceReference? source = null) {
value = i;
source_reference = source;
}
......
......@@ -62,7 +62,7 @@ public class Vala.Interface : Typesymbol {
* @param source reference to source code
* @return newly created interface
*/
public Interface (string name, SourceReference source_reference = null) {
public Interface (string name, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.name = name;
}
......@@ -302,7 +302,7 @@ public class Vala.Interface : Typesymbol {
this.lower_case_csuffix = csuffix;
}
public override string get_lower_case_cname (string infix) {
public override string? get_lower_case_cname (string? infix) {
if (infix == null) {
infix = "";
}
......@@ -313,7 +313,7 @@ public class Vala.Interface : Typesymbol {
return "%s_".printf (get_lower_case_cname (null));
}
public override string get_upper_case_cname (string infix) {
public override string get_upper_case_cname (string? infix) {
return get_lower_case_cname (infix).up ();
}
......
......@@ -52,7 +52,7 @@ public class Vala.InvocationExpression : Expression {
* @param source_reference reference to source code
* @return newly created invocation expression
*/
public InvocationExpression (Expression call, SourceReference source_reference = null) {
public InvocationExpression (Expression call, SourceReference? source_reference = null) {
this.source_reference = source_reference;
this.call = call;
}
......
......@@ -36,7 +36,7 @@ public class Vala.LockStatement : CodeNode, Statement {
*/
public Block body { get; set construct; }
public LockStatement