public override void Resolve(Generator generator) { type = generator.Resolver.ResolveType(this, typeName); if (getModifiers.Static) { getParameters.AddThisParameter(this, new StaticTypeReference(this, ParentDefinition.TypeReference)); } else { getParameters.AddThisParameter(this, ParentDefinition.TypeReference); } getParameters.Resolve(generator); if (setModifiers.Static) { setParameters.AddThisParameter(this, new StaticTypeReference(this, ParentDefinition.TypeReference)); } else { setParameters.AddThisParameter(this, ParentDefinition.TypeReference); } setParameters.Resolve(generator); if (getStatement != null) { getStatement.Resolve(generator); } if (setStatement != null) { setStatement.Resolve(generator); } }
public override void Resolve(Generator generator) { base.Resolve(generator); typeReference = generator.Resolver.ResolveType(typeName, typeName); parent.Resolve(generator); throwCastException.Resolve(generator); }
public override void Resolve(Generator generator) { Require.False(resolved); resolved = true; if (returnTypeName != null) { returnType = generator.Resolver.ResolveType(this, returnTypeName); } if (modifiers.Static) { parametersMetadata.AddThisParameter(this, new StaticTypeReference(this, ParentDefinition.TypeReference)); } else { parametersMetadata.AddThisParameter(this, ParentDefinition.TypeReference); } parametersMetadata.Resolve(generator); if (!modifiers.Extern) { statementMetadata.Resolve(generator); } else if (modifiers.ExternMetadata != null) { modifiers.ExternMetadata.Resolve(generator); } }
public override void Resolve(Generator generator) { base.Resolve(generator); type = generator.Resolver.ResolveType(this, typeName); if (assignment != null) { assignment.Resolve(generator); } }
public override void Resolve(Generator generator) { base.Resolve(generator); boolType = generator.Resolver.ResolveDefinitionType(this, new TypeName(new Identifier(this, "pluk.base.Bool"))); expression.Resolve(generator); statement.Resolve(generator); if (elseStatement != null) { elseStatement.Resolve(generator); } }
public override void Resolve(Generator generator) { base.Resolve(generator); if (parameterTypeNames != null) { parameterTypes = new List <TypeReference>(); foreach (TypeName name in parameterTypeNames) { parameterTypes.Add(generator.Resolver.ResolveType(name, name)); } } statement.Resolve(generator); }
public override void Resolve(Generator generator) { base.Resolve(generator); boolType = generator.Resolver.ResolveDefinitionType(this, new TypeName(new Identifier(this, "pluk.base.Bool"))); if (typeName != null) { type = generator.Resolver.ResolveType(typeName, typeName); TypeName enumeratorTypeName = new TypeName(new Identifier(this, "Iterator")); enumeratorTypeName.AddTemplateParameter(typeName); enumeratorType = generator.Resolver.ResolveType(enumeratorTypeName, enumeratorTypeName); } expression.Resolve(generator); statement.Resolve(generator); move.Resolve(generator); current.Resolve(generator); }
public override void Resolve(Generator generator) { base.Resolve(generator); statement.Resolve(generator); foreach (Catch c in catches) { c.type = generator.Resolver.ResolveType(c.typeName, c.typeName); if (c.type.Id < 0) { throw new Exception(c.type.TypeName.Data + c.type.GetType()); } c.statement.Resolve(generator); } if (finallyStatement != null) { finallyStatement.Resolve(generator); } }
public override void Resolve(Generator generator) { base.Resolve(generator); expression.Resolve(generator); statement.Resolve(generator); }