public override object VisitSquareAndCountry(Strict.SquareAndCountryContext context) { if (ParserWrapper.Parser.NumberOfSyntaxErrors > 0) { return(null); } string debug = context.ToStringTree(ParserWrapper.Parser); var record = new RealtyFromText(ParserWrapper, context); if (context.square() != null && context.square().square_value() != null) { var sc = context.square(); record.InitializeSquare(sc.square_value().GetText(), sc.HECTARE() != null); } if (context.square_value() != null) { record.InitializeSquare(context.square_value().GetText(), false); } if (context.COUNTRY() != null) { record.Country = ParserWrapper.GetSourceTextByTerminalNode(context.COUNTRY()); } Lines.Add(record); return(record); }
RealtyFromText InitializeOneRecord(Strict.RealtyContext context) { var record = new RealtyFromText(ParserWrapper, context); if (context.own_type() != null) { record.OwnType = context.own_type().OWN_TYPE().GetText(); } if (context.realty_type() != null) { record.RealtyType = context.realty_type().REALTY_TYPE().GetText(); } if (context.square() != null && context.square().square_value() != null) { var sc = context.square(); record.InitializeSquare(sc.square_value().GetText(), sc.HECTARE() != null); } if (context.own_type() != null && context.own_type().realty_share() != null) { record.RealtyShare = context.own_type().realty_share().GetText(); } if (context.realty_share() != null) { record.RealtyShare = context.realty_share().GetText(); } if (context.COUNTRY() != null) { record.Country = ParserWrapper.GetSourceTextByTerminalNode(context.COUNTRY()); } return(record); }
void ParseRealtiesByAntlr(string ownTypeByColumn, string cellText, Person person) { var parser = new AntlrStrictParser(); foreach (var item in parser.Parse(cellText)) { RealtyFromText realty = (RealtyFromText)item; if (realty.RealtyType != null && realty.RealtyType.Length > 0) { RealEstateProperty realEstateProperty = new RealEstateProperty(); realEstateProperty.Text = realty.GetSourceText(); realEstateProperty.type_raw = realty.RealtyType; realEstateProperty.square = realty.Square; realEstateProperty.country_raw = realty.Country; realEstateProperty.own_type_raw = realty.OwnType; //??? = realty.RealtyShare; // nowhere to write to realEstateProperty.own_type_by_column = ownTypeByColumn; person.RealEstateProperties.Add(realEstateProperty); } } }