Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minor performance improvements #247

Merged
merged 4 commits into from
Mar 20, 2017
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Don't ask for large capacities when constructing lists.
Many of these lists will only ever have a single entry.
  • Loading branch information
chescock committed Mar 17, 2017
commit 6329f40810e015007555c55273873625965f4864
Original file line number Diff line number Diff line change
Expand Up @@ -334,7 +334,7 @@ private void EnforceEvaluationRestrictions(RecurrencePattern pattern)

private List<DateTime> GetCandidates(DateTime date, RecurrencePattern pattern, bool?[] expandBehaviors)
{
var dates = new List<DateTime>(128) {date};
var dates = new List<DateTime> {date};
dates = GetMonthVariants(dates, pattern, expandBehaviors[0]);
dates = GetWeekNoVariants(dates, pattern, expandBehaviors[1]);
dates = GetYearDayVariants(dates, pattern, expandBehaviors[2]);
Expand Down Expand Up @@ -398,7 +398,7 @@ private List<DateTime> GetMonthVariants(List<DateTime> dates, RecurrencePattern
if (expand.Value)
{
// Expand behavior
var monthlyDates = new List<DateTime>(128);
var monthlyDates = new List<DateTime>();
foreach (var date in dates)
{
monthlyDates.AddRange(pattern.ByMonth.Select(month => date.AddMonths(month - date.Month)));
Expand Down Expand Up @@ -443,7 +443,7 @@ private List<DateTime> GetWeekNoVariants(List<DateTime> dates, RecurrencePattern
}

// Expand behavior
var weekNoDates = new List<DateTime>(128);
var weekNoDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -548,7 +548,7 @@ private List<DateTime> GetMonthDayVariants(List<DateTime> dates, RecurrencePatte

if (expand.Value)
{
var monthDayDates = new List<DateTime>(128);
var monthDayDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -768,7 +768,7 @@ private List<DateTime> GetHourVariants(List<DateTime> dates, RecurrencePattern p
if (expand.Value)
{
// Expand behavior
var hourlyDates = new List<DateTime>(128);
var hourlyDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -818,7 +818,7 @@ private List<DateTime> GetMinuteVariants(List<DateTime> dates, RecurrencePattern
if (expand.Value)
{
// Expand behavior
var minutelyDates = new List<DateTime>(128);
var minutelyDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -868,7 +868,7 @@ private List<DateTime> GetSecondVariants(List<DateTime> dates, RecurrencePattern
if (expand.Value)
{
// Expand behavior
var secondlyDates = new List<DateTime>(128);
var secondlyDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down
2 changes: 1 addition & 1 deletion net-core/Ical.Net/Ical.Net/General/CalendarProperty.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ namespace Ical.Net.General
[DebuggerDisplay("{Name}:{Value}")]
public class CalendarProperty : CalendarObject, ICalendarProperty
{
private List<object> _values = new List<object>(128);
private List<object> _values = new List<object>();

/// <summary>
/// Returns a list of parameters that are associated with the iCalendar object.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ public override string SerializeToString(object obj)

if (recur.ByDay.Count > 0)
{
var bydayValues = new List<string>(128);
var bydayValues = new List<string>();

var serializer = factory.Build(typeof (WeekDay), SerializationContext) as IStringSerializer;
if (serializer != null)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ public override string SerializeToString(object obj)
return null;
}

var values = new List<string>(128);
var values = new List<string>();
if (obj is string)
{
values.Add((string) obj);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -464,7 +464,7 @@ public ICalendarComponent component(SerializationContext ctx, ISerializerFactory
public CalendarParameter parameter(SerializationContext ctx, ICalendarParameterCollectionContainer container)
{
CalendarParameter p;
var values = new List<string>(128);
var values = new List<string>();

switch (LA(1))
{
Expand Down
2 changes: 1 addition & 1 deletion net-core/Ical.Net/antlr.runtime/antlr/InputBuffer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public abstract class InputBuffer
protected internal int numToConsume;

// Circular queue
protected List<char> Buffer = new List<char>(128);
protected List<char> Buffer = new List<char>();

/*This method updates the state of the input buffer so that
* the text matched since the most recent mark() is no longer
Expand Down
2 changes: 1 addition & 1 deletion v2/antlr.runtime/antlr/InputBuffer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public abstract class InputBuffer
protected internal int numToConsume;

// Circular queue
protected List<char> Buffer = new List<char>(128);
protected List<char> Buffer = new List<char>();

/*This method updates the state of the input buffer so that
* the text matched since the most recent mark() is no longer
Expand Down
14 changes: 7 additions & 7 deletions v2/ical.NET/Evaluation/RecurrencePatternEvaluator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -334,7 +334,7 @@ private void EnforceEvaluationRestrictions(IRecurrencePattern pattern)

private List<DateTime> GetCandidates(DateTime date, IRecurrencePattern pattern, bool?[] expandBehaviors)
{
var dates = new List<DateTime>(128) {date};
var dates = new List<DateTime> {date};
dates = GetMonthVariants(dates, pattern, expandBehaviors[0]);
dates = GetWeekNoVariants(dates, pattern, expandBehaviors[1]);
dates = GetYearDayVariants(dates, pattern, expandBehaviors[2]);
Expand Down Expand Up @@ -398,7 +398,7 @@ private List<DateTime> GetMonthVariants(List<DateTime> dates, IRecurrencePattern
if (expand.Value)
{
// Expand behavior
var monthlyDates = new List<DateTime>(128);
var monthlyDates = new List<DateTime>();
foreach (var date in dates)
{
monthlyDates.AddRange(pattern.ByMonth.Select(month => date.AddMonths(month - date.Month)));
Expand Down Expand Up @@ -443,7 +443,7 @@ private List<DateTime> GetWeekNoVariants(List<DateTime> dates, IRecurrencePatter
}

// Expand behavior
var weekNoDates = new List<DateTime>(128);
var weekNoDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -548,7 +548,7 @@ private List<DateTime> GetMonthDayVariants(List<DateTime> dates, IRecurrencePatt

if (expand.Value)
{
var monthDayDates = new List<DateTime>(128);
var monthDayDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -768,7 +768,7 @@ private List<DateTime> GetHourVariants(List<DateTime> dates, IRecurrencePattern
if (expand.Value)
{
// Expand behavior
var hourlyDates = new List<DateTime>(128);
var hourlyDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -818,7 +818,7 @@ private List<DateTime> GetMinuteVariants(List<DateTime> dates, IRecurrencePatter
if (expand.Value)
{
// Expand behavior
var minutelyDates = new List<DateTime>(128);
var minutelyDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down Expand Up @@ -868,7 +868,7 @@ private List<DateTime> GetSecondVariants(List<DateTime> dates, IRecurrencePatter
if (expand.Value)
{
// Expand behavior
var secondlyDates = new List<DateTime>(128);
var secondlyDates = new List<DateTime>();
for (var i = 0; i < dates.Count; i++)
{
var date = dates[i];
Expand Down
2 changes: 1 addition & 1 deletion v2/ical.NET/General/CalendarProperty.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ namespace Ical.Net.General
[DebuggerDisplay("{Name}:{Value}")]
public class CalendarProperty : CalendarObject, ICalendarProperty
{
private List<object> _values = new List<object>(128);
private List<object> _values = new List<object>();

/// <summary>
/// Returns a list of parameters that are associated with the iCalendar object.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ public override string SerializeToString(object obj)

if (recur.ByDay.Count > 0)
{
var bydayValues = new List<string>(128);
var bydayValues = new List<string>();

var serializer = factory.Build(typeof (IWeekDay), SerializationContext) as IStringSerializer;
if (serializer != null)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ public override string SerializeToString(object obj)
return null;
}

var values = new List<string>(128);
var values = new List<string>();
if (obj is string)
{
values.Add((string) obj);
Expand Down
2 changes: 1 addition & 1 deletion v2/ical.NET/Serialization/iCalendar/iCalParser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -465,7 +465,7 @@ public ICalendarComponent component(ISerializationContext ctx, ISerializerFactor
public CalendarParameter parameter(ISerializationContext ctx, ICalendarParameterCollectionContainer container)
{
CalendarParameter p;
var values = new List<string>(128);
var values = new List<string>();

switch (LA(1))
{
Expand Down